【问题标题】:Define/change Kubernetes SSH key file name in a YAML在 YAML 中定义/更改 Kubernetes SSH 密钥文件名
【发布时间】:2021-09-21 14:25:14
【问题描述】:

我有一个秘密:

apiVersion: v1
kind: Secret
metadata:
  name: secret-ssh-auth
type: kubernetes.io/ssh-auth
data:
  ssh-privatekey: |
          SEVMTE9PT09PT09PT09PT09PT09PCg==

和部署:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80
        volumeMounts:
          - name: secret-ssh-auth
            mountPath: /root/.ssh
      volumes:
      - name: secret-ssh-auth
        secret:
          secretName: secret-ssh-auth
          defaultMode: 0400

它使用此路径 /root/.ssh/ssh-privatekey 创建一个文件,而我希望使用 /root/.ssh/id_rsa 名称。

我知道我们可以通过运行 kubectl 命令来解决它,但我想在 YAML 文件中处理它。 那么,如何通过 YAML 文件来做到这一点呢?

【问题讨论】:

    标签: kubernetes ssh kubernetes-secrets


    【解决方案1】:

    根据 Kubernetes 文档,ssh-privatekey 键是强制性的,在这种情况下,您可以通过 stringData 键将其留空,然后通过 data 键定义另一个,如下所示:

    apiVersion: v1
    kind: Secret
    metadata:
      name: secret-ssh-auth
    type: kubernetes.io/ssh-auth
    stringData:
      ssh-privatekey: |
              -
    data:
       id_rsa: |
              SEVMTE9PT09PT09PT09PT09PT09PCg==
    

    【讨论】:

      【解决方案2】:

      遇到了同样的问题,并通过像这样简单地定义 spec.volumes 来解决这个问题,它将 key 重命名为 path 值:

        volumes:
          - name: privatekey
            secret:
              secretName: private-key
              items:
                - key: ssh-privatekey
                  path: id_rsa
              defaultMode: 384
      

      然后在容器定义中引用它:

        containers:
          - name: xxx
            volumeMounts:
              - name: privatekey
                mountPath: /path/to/.ssh
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-09-08
        • 2016-08-15
        • 2017-08-09
        • 2017-11-27
        • 2023-01-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多