説明
kubelet の --hostname-override は、ホスト名の代わりに指定した文字列でノードを識別します。必要な環境では有効な設定ですが、誤った値はノード名、証明書、資産情報の不一致につながる場合があります。
想定される影響
- ノードの登録や認証に失敗したり、運用担当者が別のノードと誤認したりする場合があります。
- 既存の上書きを無計画に削除すると、ノードの識別名が変わってワークロードの運用に影響する場合があります。
対処方法
- 上書きが必要な理由と、実際の Node 名、証明書、資産情報を確認してください。不要ならデフォルトの名前を使うよう設定してください。
- 既存のノード名が変わる場合は、ワークロードの移動とノードの交換・再登録を計画し、新しい名前で正常に登録されることを確認してください。
例
foo/bar は例示イメージであり、kubelet の引数だけを比較する抜粋です。kubelet のデプロイや認証設定の全体を示すものではありません。
変更前
yaml
apiVersion: v1
kind: Pod
metadata:
name: kubelet
spec:
containers:
- name: kubelet
image: foo/bar
command:
- kubelet
args:
- --hostname-override=node-a
node-a をノードの識別に使います。実際の認証・運用構成と一致する必要があります。
変更後
yaml
apiVersion: v1
kind: Pod
metadata:
name: kubelet
spec:
containers:
- name: kubelet
image: foo/bar
command:
- kubelet
args: []
上書きの引数を削除します。既存の識別名が変わる場合は、先にノードの移行を計画してください。