四时宝库

程序员的知识宝库

kubernetes基础知识之secret资源清单文件

secret的资源清单文件:

secret.yaml:

apiVersion: v1

kind: Secret

metadata:

name: mysecret

namespace: lx

type: Opaque

data:

user: YWRtaW4K

password: MTIzCg==

创建secret:

kubectl create -f mysecret.yaml

查看secret:

kubectl get secret mysecret -n lx -o yaml

创建pod:

mysecret-pod.yaml:

apiVersion: v1

kind: Pod

metadata:

name: secret-env

namespace: lx

spec:

containers:

- name: testsecret-container

image: xxx(镜像名)

imagePullPolicy: Always

env:

- name: USERNAME

valueFrom:

secretKeyRef:

name: mysecret

key: user

- name: PASSWORD

valueFrom:

secretKeyRef:

name: mysecret

key: password

创建pod:

kubectl create -f mysecret-pod.yaml

查看pod:

kubectl get pod -n lx -o wide | grep secret

进入容器内部:

kubectl exec -it $pod_name -n $namespace_name -- /bin/sh

显示secret的值:

env | egrep -i 'user|password' |sort -rn

在kubernetes的pod内部可以看到明文值。

如果需要查看yaml文件中的密文所对应的明文,可以执行:

echo -n "密文" | base64 --decode

~~~

basic-auth:是比如七层的负载均衡调度,在ingress中可以做一个基于用户的ACL,也就是在访问到这个网站接口的时候,需要先填写用户名和密码进行认证。basic-auth就是用来保存基ssh-auth,认证通过才允许访问。

ssh-auth:ssh密钥,也就是Secure SHell,用来保存安全远程登录和管理网络服务的加密协议的密钥。

Tls:是https认证证书的密钥。用于tls客户端或者服务器端的数据。

Token:是引导令牌。当secret配置文件中未做显示设置时,默认的secret类型是Opaque。

Service服务创建的时候,未指定服务类型的话,默认的服务类型是ClusterIP的服务类型。

鼓励的话语:人只要不放弃,就一定可以东山再起。活着努力,翻盘人生才是尊严!

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接