Closed yokaze closed 4 years ago
Server-side Apply was promoted to Beta in 1.16, but is now introducing a second Beta in 1.18. This new version will track and manage changes to fields of all new Kubernetes objects, allowing you to know what changed your resources and when.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#extending-ingress-with-and-replacing-a-deprecated-annotation-with-ingressclass
kubernetes.io/ingress.class
is deprecated and IngressClass
is introduced as a replacement.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#sig-cli-introduces-kubectl-debug
We need to enable EphemeralContainers
feature gate to use kubectl debug
.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#kubectl
We often assumes that kubectl run
create Deployment. We have to fix those test code.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#client-go We have to follow this modification, especially in cke and bmc-reverse-proxy. Context appears as a first argument.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#client-go We need to check metrics update.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#other-api-changes CRD schema may be failed to applied. we have to fix them as needed.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#kube-scheduler-1 A task is already created: multiple scheduling profiles https://github.com/cybozu-go/neco/issues/988 Import settings as Go-typed objects.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#kube-scheduler-1
Scheduler Extenders can now be configured in the v1alpha2 component config
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#kube-proxy-1
Added kube-proxy flags --ipvs-tcp-timeout, --ipvs-tcpfin-timeout, --ipvs-udp-timeout to configure IPVS connection timeouts
Related to Coil v2.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#kube-proxy-1
We can use --detect-local-mode
as NodeCIDR
to optimize iptables and/or ipvs rules. (neco/etc/cke-template.yml
)
It is because we separate Pod and Service IP ranges.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#feature-2
DefaultConstraints can be specified for PodTopologySpread Plugin in the scheduler’s ComponentConfig
We need to enhance CKE cluster.yml
to support cluster-level default constraints.
https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#cluster-level-default-constraints
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#feature-2
Kubectl/drain: add disable-eviction option.Force drain to use delete, even if eviction is supported. This will bypass checking PodDisruptionBudgets, and should be used with caution. Kubectl/drain: add skip-wait-for-delete-timeout option. If a pod’s DeletionTimestamp is older than N seconds, skip waiting for the pod. Seconds must be greater than 0 to skip.
We can utilize these options in automating reboot.
PodTopologySpread plugin now excludes terminatingPods when making scheduling decisions.
Just FYI
SafeSysctlWhitelist: add net.ipv4.ping_group_range
we can now send ping https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#feature-2
EvenPodsSpread
is enabled by default in 1.18. We need to remove the option utilization.
The kubelet and the default docker runtime now support running ephemeral containers in the Linux process namespace of a target container. Other container runtimes must implement support for this feature before it will be available for that runtime.
We use containerd instead of Docker. evaluation is requred.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md#dependencies-7
pause container should be updated. Also, we should not use master.
k8s v1.18.1 also has some metrics name change. We need to check them.
What
To conform to kubernetes 1.18, check the release note of this version.
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.18.md
How
Read it and pick the necessary actions. Necessary actions should be listed as comments for this issue.
e.g. https://app.zenhub.com/workspaces/neco-5ca28d055128c041a68c0a8f/issues/cybozu-go/neco/828
Checklist