Kubernetes 具有挂起状态的Hashicorp vault吊舱

Kubernetes 具有挂起状态的Hashicorp vault吊舱,kubernetes,hashicorp-vault,Kubernetes,Hashicorp Vault,我部署了具有3个副本的hashicorp vault。Pod vault-0正在运行,但其他两个Pod处于挂起状态。 这是我的名字 # Vault Helm Chart Value Overrides global: enabled: true tlsDisable: true injector: enabled: true # Use the Vault K8s Image https://github.com/hashicorp/vault-k8s/ image:

我部署了具有3个副本的hashicorp vault。Pod vault-0正在运行,但其他两个Pod处于挂起状态。

这是我的名字

# Vault Helm Chart Value Overrides
global:
  enabled: true
  tlsDisable: true

injector:
  enabled: true
  # Use the Vault K8s Image https://github.com/hashicorp/vault-k8s/
  image:
    repository: "hashicorp/vault-k8s"
    tag: "0.9.0"

  resources:
    requests:
      memory: 256Mi
      cpu: 250m
    limits:
      memory: 256Mi
      cpu: 250m
  affinity: ""
server:
  auditStorage:
    enabled: true
  standalone:
    enabled: false
  image:
    repository: "hashicorp/vault"
    tag: "1.6.3"
  resources:
    requests:
      memory: 4Gi
      cpu: 1000m
    limits:
      memory: 8Gi
      cpu: 1000m 
  ha:
    enabled: true
    replicas: 3    
    raft:
      enabled: true
      setNodeId: true
      config: |
        ui = true

        listener "tcp" {
          tls_disable = true
          address = "[::]:8200"
          cluster_address = "[::]:8201"
        }

        storage "raft" {
          path = "/vault/data"
        }

        service_registration "kubernetes" {}
    config: |
      ui = true

      listener "tcp" {
        tls_disable = true
        address = "[::]:8200"
        cluster_address = "[::]:8201"
      }

      service_registration "kubernetes" {}


# Vault UI
ui:
  enabled: true
  serviceType: "ClusterIP"
  externalPort: 8200
kubectl在未决POD中进行了描述,并可以看到以下状态消息。我不确定是否在覆盖文件中添加了正确的关联设置。不知道我做错了什么。我正在使用vault helm图表部署到docker桌面本地集群。谢谢你的帮助


values.yaml文件中存在一些问题

1.你准备好了吗

server:
  auditStorage:
    enabled: true
但是您没有指定如何创建PVC以及存储类是什么。如果启用存储,图表希望您这样做。看看: 如果只是在本地计算机上测试或指定存储配置,请将其设置为false

2.您为注入器设置了空的关联变量,但没有为服务器设置。设置

affinity: ""
对于服务器也是如此。看看:

3.未初始化且密封的Vault群集实际上不可用。您需要在Vault准备就绪之前对其进行初始化和解封。这意味着要设置一个
readinessProbe
。大概是这样的:

server:
  readinessProbe:
    path: "/v1/sys/health?standbyok=true&sealedcode=204&uninitcode=204"
4.最后一个,但这是可选的。这些内存请求:

resources:
  requests:
    memory: 4Gi
    cpu: 1000m
  limits:
    memory: 8Gi
    cpu: 1000m 
有点偏高。设置一个由3个副本组成的HA群集,每个副本请求4Gi内存可能会导致
内存不足
错误-在本地群集上部署时最有可能发生错误

但话说回来,您的本地计算机可能有32 GB的内存—我不知道;)如果它没有,修剪下来,以适应您的机器

因此,以下值适用于我:

# Vault Helm Chart Value Overrides
global:
  enabled: true
  tlsDisable: true

injector:
  enabled: true
  # Use the Vault K8s Image https://github.com/hashicorp/vault-k8s/
  image:
    repository: "hashicorp/vault-k8s"
    tag: "0.9.0"

  resources:
    requests:
      memory: 256Mi
      cpu: 250m
    limits:
      memory: 256Mi
      cpu: 250m
  affinity: ""
server:
  auditStorage:
    enabled: false
  standalone:
    enabled: false
  image:
    repository: "hashicorp/vault"
    tag: "1.6.3"
  resources:
    requests:
      memory: 256Mi
      cpu: 200m
    limits:
      memory: 512Mi
      cpu: 400m
  affinity: ""
  readinessProbe:
    enabled: true
    path: "/v1/sys/health?standbyok=true&sealedcode=204&uninitcode=204"
  ha:
    enabled: true
    replicas: 3
    raft:
      enabled: true
      setNodeId: true
      config: |
        ui = true

        listener "tcp" {
          tls_disable = true
          address = "[::]:8200"
          cluster_address = "[::]:8201"
        }

        storage "raft" {
          path = "/vault/data"
        }

        service_registration "kubernetes" {}
    config: |
      ui = true

      listener "tcp" {
        tls_disable = true
        address = "[::]:8200"
        cluster_address = "[::]:8201"
      }

      service_registration "kubernetes" {}


# Vault UI
ui:
  enabled: true
  serviceType: "ClusterIP"
  externalPort: 8200

您能删除这一行吗
亲和性:“
然后再试一次吗?嗨,Joshua,欢迎来到SO。请不要以图片的形式发布文本内容,因为它很难阅读,妨碍搜索,并且在页面中被显式调用。以后,请询问系统管理问题,因为这与编程无关。@mdaniel谢谢。你认为这是一个系统管理问题吗?我在stackoverflow中见过很多k8s问题。Thanks@Joshua是的,当然,因为作为这个问题的解决方案,您会更改什么
if
语句或变量?我相信在kubernetes网站上的某个地方,他们告诉人们就此提问,但这是误导他们的,因为系统管理问题非常重要