はじめに
このエントリは、Kubernetes 1.14のCHANGELOGからSIG Appsの取り組みついてまとめています。
他の変更点についてはKubernetes 1.14: 変更点まとめ を参照してください。
1.14 What’s New
なし
Known Issues
なし
Urgent Upgrade Notes(重大なアップグレードに関する通達)
-
node.alpha.kubernetes.io/notReady
とnode.alpha.kubernetes.io/unreachable
は廃止となりました、代わりにnode.kubernetes.io/not-ready
とnode.kubernetes.io/unreachable
を使うようにしてください (#73001, @shivnagarajan)
Deprecations(廃止予定の機能)
- API
- NetworkPolicyリソースはv1.16で
extension/v1beta1
での提供が廃止されます。v1.8から利用できるようになっているnetworking.k8s.io/v1
に移行してください。既存のデータは新しいnetworking.k8s.io/v1
を利用するようにしてください。 - PosSecurityPolicyリソースはv1.16で
extensions/v1beta1
での提供が廃止されます。v1.10から利用できるようになっているpolicy/v1beta1
に移行してください。既存のデータは新しいpolicy/v1beta1
を利用するようにしてください。 - DaemonSet, Deployment, Replicasetリソースはv1.16で
extensions/v1beta1
,apps/v1beta1
,apps/v1beta2
での提供が廃止されます。v1.9から利用できるようになっているapps/v1
をに移行してください。既存のデータは新しいapps/v1
を利用するようにしてください。 - これらの機能はGAとなり、関係するfeature gateは廃止予定となり、v1.15で削除されます。
-
CustomPodDNS
-
HugePages
MountPropagation
PersistentLocalVolumes
-
Notable Features
なし
Detailed Bug Fixes And Changes(細かなバグフィックスや変更)
- DasemonSetにより作られたPodが存在しないNodeに紐づけられている場合に削除する処理を追加しました。(#73401, @krzysztof-jastrzebski)
- DaemonSetコントローラがPodを削除しないケースがあったようです。 Issue #71349
- Podのevinctionがデフォルトでグレースフルに振る舞うようになりました。これはevinctionのリクエストにdelete optionが付与されていない場合の挙動です。(#72730, @liggitt)
-
evictionのリクエストの内部で発行するPodのDeleteの際のDelete OptionがevictionのAPIのパラメータに指定されたDeleteOptionをそのまま引き渡すようになっており、そこにnilが渡った場合は即座にPodが削除されていました。今回evictionの処理が変更され、DeleteOptionが非nilを保証するようになったため、Grafafulに処理が行われるようになりました。これはIssue #72717によるとPythonのKubernetesライブラリの
create_namespaced_pod_eviction
を実行する場合や、直接eviction APIを呼び出している場合に問題になる場合があるようです。
-
evictionのリクエストの内部で発行するPodのDeleteの際のDelete OptionがevictionのAPIのパラメータに指定されたDeleteOptionをそのまま引き渡すようになっており、そこにnilが渡った場合は即座にPodが削除されていました。今回evictionの処理が変更され、DeleteOptionが非nilを保証するようになったため、Grafafulに処理が行われるようになりました。これはIssue #72717によるとPythonのKubernetesライブラリの
所感
ChangeLogによると新しい機能追加はなく、今までbetaだった機能がstableに着々と昇格しているというのが、今回のハイライトです。地味ですが、重要な変更だと感じました。