In kubernetes 1.6,the information store in etcd v3,I use "etcdctl get" command to get the information as follow:
my question is how to deserialize the information?how to deserialize the information by "protoc --raw" command?I read the paper on a website:
"You have the unusual data we caught and fixed in Prevent protobuf storage with etcd2, which is base64 encoded protobuf (etcd2 does not support storing binary values). In 1.6 we default to etcd3 mode, which supports binary values, and defaults to storing in "application/vnd.kubernetes.protobuf" which is the following form for the values
4 bytes -
k8s\x00
protobuf encoding of runtime.Unknown (pkg/runtime/types.go#Unknown) * the "typeMeta" field set to the same values of kind and apiVersion that would be returned from the API * the "raw" field set to the protobuf encoded bytes for the golang struct identified by typeMeta - no magic numberYou can decode this with:
head -4 (strip the magic number) | protoc --raw (decodes the proto)
You can then decode the raw body using protoc as wel."
but I don't know how to perform it,is there any one know that?