Black lives matter.
We stand in solidarity with the Black community.
Racism is unacceptable.
It conflicts with the core values of the Kubernetes project and our community does not tolerate it.
We stand in solidarity with the Black community.
Racism is unacceptable.
It conflicts with the core values of the Kubernetes project and our community does not tolerate it.
We've been hard at work on cleaning up the API over the past several months (see https://github.com/GoogleCloudPlatform/kubernetes/issues/1519 for details). The result is v1beta3, which is considered to be the release candidate for the v1 API.
We would like you to move to this new API version as soon as possible. v1beta1 and v1beta2 are deprecated, and will be removed by the end of June, shortly after we introduce the v1 API.
As of the latest release, v0.15.0, v1beta3 is the primary, default API. We have changed the default kubectl and client API versions as well as the default storage version (which means objects persisted in etcd will be converted from v1beta1 to v1beta3 as they are rewritten).
You can take a look at v1beta3 examples such as:
https://github.com/GoogleCloudPlatform/kubernetes/tree/master/examples/guestbook/v1beta3
https://github.com/GoogleCloudPlatform/kubernetes/tree/master/examples/walkthrough/v1beta3
https://github.com/GoogleCloudPlatform/kubernetes/tree/master/examples/update-demo/v1beta3
To aid the transition, we've also created a conversion tool and put together a list of important different API changes.
id
is now called name
.name
, labels
, annotations
, and other metadata are now nested in a map called metadata
desiredState
is now called spec
, and currentState
is now called status
/minions
has been moved to /nodes
, and the resource has kind Node
/api/v1beta3/namespaces/{namespace}/{resource_collection}/{resource_name}
replicationControllers
, usereplicationcontrollers
.?watch=true
URL parameter along with the desired resourceVersion
parameter to watch from.entrypoint
has been renamed to command
, and command
has been renamed to args
.resources{cpu:1}
) rather than as individual fields, and resource values support scaling suffixes rather than fixed scales (e.g., milli-cores).source
is inlined into volume
rather than nested.And the most recently generated Swagger specification of the API is here:
http://kubernetes.io/third_party/swagger-ui/#!/v1beta3
More details about our approach to API versioning and the transition can be found here:
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/api.md
Another change we discovered is that with the change to the default API version in kubectl, commands that use "-o template" will break unless you specify "--api-version=v1beta1" or update to v1beta3 syntax. An example of such a change can be seen here:
https://github.com/GoogleCloudPlatform/kubernetes/pull/6377/files
If you use "-o template", I recommend always explicitly specifying the API version rather than relying upon the default. We may add this setting to kubeconfig in the future.
Let us know if you have any questions. As always, we're available on IRC (#google-containers) and github issues.