【问题标题】:How to access etcd cluster endpoints from kubernetes master如何从 kubernetes master 访问 etcd 集群端点
【发布时间】:2020-04-05 20:09:59
【问题描述】:

有没有一种方法可以让我从kubernetes 主节点访问etcd 端点,而无需实际进入etcd 集群?

例如,我可以对etcd 端点进行健康卷曲(使用ssh)或查看端点并从kubernetes 主节点获取返回状态? (即没有真正进入etcd master)

【问题讨论】:

    标签: kubernetes etcd


    【解决方案1】:

    这实际上取决于您如何配置集群。实际上,etcd 集群完全可以在 k8s 集群之外工作。 etcd 也可以配置 TLS 身份验证,因此您需要提供证书文件才能通过 curl 发出任何请求。 etcdctl 可以满足您的一切需求。比如:

    ~# export ETCDCTL_API=3
    ~# export ETCDCTL_ENDPOINTS=https://kub01.msk.test.ru:2379,https://kub02.msk.test.ru:2379,https://kub03.msk.test.ru:2379
    ~# etcdctl endpoint status
    https://kub01.msk.test.ru:2379, e9bc9d307c96fd08, 3.3.13, 10 MB, true, 1745, 17368976
    https://kub02.msk.test.ru:2379, 885ed66440d63a79, 3.3.13, 10 MB, false, 1745, 17368976
    https://kub03.msk.test.ru:2379, 8c5c20ece034a652, 3.3.13, 10 MB, false, 1745, 17368976
    

    或使用 TLS:

    ~# etcdctl endpoint health
    client: etcd cluster is unavailable or misconfigured; error #0: remote error: tls: bad certificate
    ; error #1: remote error: tls: bad certificate
    ; error #2: remote error: tls: bad certificate
    
    # need to export environment vars
    
    ~# export ETCDCTL_CACERT=<PATH_TO_FILE>
    ~# export ETCDCTL_CERT=<PATH_TO_FILE>
    ~# export ETCDCTL_KEY=<PATH_TO_FILE>
    ~# etcdctl endpoint health
    https://kub01.msk.test.ru:2379 is healthy: successfully committed proposal: took = 2.946423ms
    https://kub02.msk.test.ru:2379 is healthy: successfully committed proposal: took = 1.5883ms
    https://kub03.msk.test.ru:2379 is healthy: successfully committed proposal: took = 1.745591ms
    

    【讨论】:

      【解决方案2】:

      您可以在不实际进入 pod 的情况下将命令运行到 pod 中,例如,如果我必须在 etcd pod 中运行 ls -l,我会这样做

      kubectl exec -it -n kube-system etcd-kanister-control-plane -- ls -l
      

      同样你可以运行任何命令而不是ls -l

      【讨论】:

      • ...仅当您在集群中运行 etcd 而不是作为单独的集群运行时才有效
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-16
      • 2019-06-04
      • 2019-02-24
      • 2021-06-05
      • 1970-01-01
      • 2021-01-22
      相关资源
      最近更新 更多