Todos os produtos
Search
Central de documentação

Elastic Container Instance:Configure the NTP service

Última atualização: Sep 21, 2026

Em aplicações sensíveis ao tempo, o desvio de relógio nos pods de contêineres pode desordenar os carimbos de data e hora dos logs. Isso torna a correlação de incidentes pouco confiável e gera inconsistências de dados em sistemas distribuídos. Para evitar esses problemas, adicione a anotação k8s.aliyun.com/eci-ntp-server ao pod do Elastic Container Instance (ECI) para direcionar os contêineres a um servidor NTP específico.

Pré-requisitos

Antes de começar, certifique-se de ter:

  • Permissão para criar Deployments e pods

  • O endereço IP de um servidor NTP acessível

Como funciona

Quando o ECI cria um pod, ele lê a anotação k8s.aliyun.com/eci-ntp-server e configura todos os contêineres do pod para sincronizar seus relógios com o servidor NTP especificado.

O ECI aplica as anotações apenas na criação do pod. Adicionar ou modificar anotações em um pod em execução não surte efeito.

Para Deployments, adicione a anotação em spec.template.metadata.annotations, e não em metadata.annotations de nível superior. O ECI lê as anotações do modelo do pod, e não do próprio objeto Deployment.

Configure o NTP para um pod

  1. Crie um arquivo YAML chamado set-ntp.yaml com o seguinte conteúdo. Substitua 100.100.XX.XX pelo endereço IP do seu servidor NTP.

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: test-ntp
      labels:
        app: test
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          name: test-ntp
          labels:
            app: nginx
            alibabacloud.com/eci: "true"
          annotations:
            k8s.aliyun.com/eci-ntp-server: 100.100.XX.XX  # IP address of the NTP server
        spec:
          containers:
          - name: nginx
            image: registry.cn-shanghai.aliyuncs.com/eci_open/centos:7
            ports:
            - containerPort: 80
            command: ["/bin/sh","-c","sleep 3600"]
  2. Aplique a configuração.

    kubectl create -f set-ntp.yaml

Verifique a configuração de NTP

  1. Obtenha o nome do pod.

    kubectl get pod

    Saída esperada:

    NAME                        READY   STATUS    RESTARTS   AGE
    test-ntp-599d5ff9f5-9kb56   1/1     Running   0          3m59s
  2. Abra um shell no contêiner.

    kubectl exec -it test-ntp-599d5ff9f5-9kb56 -- bash
  3. Verifique a origem de sincronização de hora.

    Se o chrony não estiver instalado, execute yum -y install chrony primeiro.
    chronyc sources

    Uma linha que começa com ^* indica a origem selecionada atualmente. Confirme se o IP do seu servidor NTP aparece nessa linha.

    210 Number of sources = 1
    MS Name/IP address         Stratum Poll Reach LastRx Last sample
    ===============================================================================
    ^* 100.100.XX.XX                 2    6   377    35    +40us[ +135us] +/-   14ms