このトピックでは、仮想Kubeletノードで実行されるポッドのネットワークタイムプロトコル (NTP) サービスを設定する方法について説明します。 NTPサービスは、コンテナとNTPサーバー間で時刻を同期します。
前提条件
Virtual Kubelet is upgraded to the latest version. 詳細については、「仮想Kubeletの更新」をご参照ください。
背景情報
Kubernetesクラスターの種類によって、Virtual Kubeletを更新する操作が異なります。
サーバーレスKubernetes (ASK) クラスターの場合、仮想Kubeletが自動的に更新されます。
Container Service For Kubernetes (ACK) クラスターの場合、Virtual Kubeletの更新方法はクラスターのエディションによって異なります。 マネージドACKクラスターの場合、システムは自動的にVirtual Kubeletを更新します。 専用ACKクラスターの場合、仮想Kubeletを手動で更新する必要があります。
自己管理型Kubernetesクラスターの場合、仮想Kubeletを手動で更新する必要があります。
手順
ポッドの構成ファイルに、使用するNTPサーバーのIPアドレスを指定するための注釈を追加します: k8s.aliyun.com/eci-ntp-server
。
NTPサービスの設定に使用されるYAMLファイルを作成します。
vim set-ntp-pod.yaml
YAMLファイルの内容は次のとおりです。
apiVersion: v1 種類: ポッド メタデータ: annotations: k8s.aliyun.com/eci-ntp-server: 10.10.5.1# NTPサーバのIPアドレス 名: set-custom-ntp spec: nodeName: virtual-kubelet containers: -画像: centos: 最新 command: -睡眠 -「3600」 imagePullPolicy: IfNotPresent 名前: centos
YAMLファイルの設定をポッドに適用します。
kubectl apply -f set-ntp-pod.yaml
結果を確認する
エラスティックコンテナインスタンスにログインして、NTPサービスが期待どおりに機能するかどうかを確認します。
ポッドに関する情報を照会します。
kubectl get pod/set-custom-ntp
例:
の名前準備ができているステータスの履歴書 set-custom-ntp 1/1実行中0 7m2 0s
コンテナに行きます。
kubectl exec set-custom-ntp -it -- bash
コンテナの時刻のソースを照会します。
chronyc sources
If the IP address of the NTP server is returned, the NTP service works as expected. 例:
210 ソースの数=1 MS名 /IPアドレスStratum Poll Reach LastRx Last sample =============================================================================== ^ * 10.5.1 2 6 377 35 + 40us[ + 135us] +/- 14ms