在 k8s 中将证书文件提供到 pod 中
Provide certificate file into pod in k8s
我们是一个需要证书文件的pod
我们需要提供一个证书文件的路径,(我们有这个证书)我们应该如何将这个证书文件放入 k8s 以便 pod 可以访问它
例如我们能够像下面这样向 pod "/path/to/certificate_authority.crt”
提供它
我们是否应该使用 secret/configmap,如果是,那么如何?
创建一个秘密,然后将其装载到所需的文件夹中。
官方文档在这里:https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets-as-files-from-a-pod
创建一个 TLS 密钥,然后将其装载到所需的文件夹。
apiVersion: v1
kind: Secret
metadata:
name: secret-tls
type: kubernetes.io/tls
data:
# the data is abbreviated in this example
tls.crt: |
MIIC2DCCAcCgAwIBAgIBATANBgkqh ...
tls.key: |
MIIEpgIBAAKCAQEA7yn3bRHQ5FHMQ ...
要从您的 pod 中将机密装载到卷中:
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: mypod
image: redis
volumeMounts:
- name: foo
mountPath: "/path/to/"
readOnly: true
volumes:
- name: foo
secret:
secretName: secret-tls
我们是一个需要证书文件的pod
我们需要提供一个证书文件的路径,(我们有这个证书)我们应该如何将这个证书文件放入 k8s 以便 pod 可以访问它
例如我们能够像下面这样向 pod "/path/to/certificate_authority.crt”
提供它
我们是否应该使用 secret/configmap,如果是,那么如何?
创建一个秘密,然后将其装载到所需的文件夹中。
官方文档在这里:https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets-as-files-from-a-pod
创建一个 TLS 密钥,然后将其装载到所需的文件夹。
apiVersion: v1
kind: Secret
metadata:
name: secret-tls
type: kubernetes.io/tls
data:
# the data is abbreviated in this example
tls.crt: |
MIIC2DCCAcCgAwIBAgIBATANBgkqh ...
tls.key: |
MIIEpgIBAAKCAQEA7yn3bRHQ5FHMQ ...
要从您的 pod 中将机密装载到卷中:
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: mypod
image: redis
volumeMounts:
- name: foo
mountPath: "/path/to/"
readOnly: true
volumes:
- name: foo
secret:
secretName: secret-tls