Hoxe, 18 de setembro, lánzase a próxima versión de Kubernetes: 1.16. Coma sempre, agárdanos moitas melloras e novos produtos. Pero gustaríame chamar a súa atención sobre as seccións Acción necesaria do ficheiro
En xeral, requiren intervención manual...
Comecemos de inmediato cun cambio que probablemente afectará a todos os que levan traballando con kubernetes o tempo suficiente. A API de Kubernetes xa non admite versións antigas da API de recursos.
Se alguén non o soubo ou esqueceu...A versión da API do recurso indícase no manifesto, no campo apiVersion: apps/v1
a saber
Tipo de recurso
versión antiga
Con que se debe substituír
Todos os recursos
apps/v1beta1
apps/v1beta2
aplicacións/v1
despregamentos
daemonset
conxunto de réplicas
extensión/v1beta1
aplicacións/v1
políticas de rede
extensións/v1beta1
networking.k8s.io/v1
políticas de seguridade
extensións/v1beta1
policy/v1beta1
Tamén me gustaría chamar a súa atención sobre o feito de que os obxectos de tipo Ingress
tamén cambiou apiVersion
en networking.k8s.io/v1beta1
. Antigo significado extensions/v1beta1
aínda é compatible, pero hai unha boa razón para actualizar esta versión nos manifestos ao mesmo tempo.
Hai moitos cambios en varias etiquetas do sistema (etiquetas de nodos) que se instalan nos nodos.
Kubelet tiña prohibido establecer etiquetas arbitrarias (anteriormente podían establecerse mediante as teclas de inicio kubelet --node-labels
), deixaron só esta lista
kubernetes.io/hostname
kubernetes.io/instance-type
kubernetes.io/os
kubernetes.io/arch
beta.kubernetes.io/instance-type
beta.kubernetes.io/os
beta.kubernetes.io/arch
failure-domain.beta.kubernetes.io/zone
failure-domain.beta.kubernetes.io/region
failure-domain.kubernetes.io/zone
failure-domain.kubernetes.io/region
[*.]kubelet.kubernetes.io/*
[*.]node.kubernetes.io/*
Etiquetas beta.kubernetes.io/metadata-proxy-ready
, beta.kubernetes.io/metadata-proxy-ready e beta.kubernetes.io/kube-proxy-ds-ready xa non se engaden aos novos nodos e varios compoñentes adicionais comezaron a usar etiquetas lixeiramente diferentes como selectores de nodos:
Compoñente
Etiqueta antiga
Etiqueta actual
kube-proxy
beta.kubernetes.io/kube-proxy-ds-ready
node.kubernetes.io/kube-proxy-ds-ready
ip-mask-agent
beta.kubernetes.io/masq-agent-ds-ready
node.kubernetes.io/masq-agent-ds-ready
metadatos-proxy
beta.kubernetes.io/metadata-proxy-ready
cloud.google.com/metadata-proxy-ready
kubeadm agora elimina o ficheiro de configuración inicial do kublet que hai detrás bootstrap-kubelet.conf
. Se as túas ferramentas estaban accedendo a este ficheiro, cambia a usar kubelet.conf
, que almacena a configuración de acceso actual.
Cadvisor xa non ofrece métricas pod_name
и container_name
se os usaches en Prometheus, vai a métricas pod
и container
respectivamente.
Elimináronse as teclas co comando de liña:
Compoñente
Chave retraída
hipercubo
--facer-enlace simbólico
kube-proxy
--contedor-recurso
O planificador comezou a usar a versión v1beta1 da API de eventos. Se usas ferramentas de terceiros para interactuar coa API de eventos, cambia á versión máis recente.
Un momento de humor. Durante a preparación da versión 1.16, fixéronse os seguintes cambios:
- eliminou a anotación
scheduler.alpha.kubernetes.io/critical-pod
na versión v1.16.0-alpha.1 - devolveu a anotación
scheduler.alpha.kubernetes.io/critical-pod
na versión v1.16.0-alpha.2 - eliminou a anotación
scheduler.alpha.kubernetes.io/critical-pod
na versión v1.16.0-beta.1
Usa o campo spec.priorityClassName
para indicar a importancia da vaina.
Fonte: www.habr.com