美文网首页
k8s secert

k8s secert

作者: 白敏鸢 | 来源:发表于2018-03-06 13:41 被阅读0次
secret:pod提供密码,token,私钥等敏感数据
创建secret
step1: vim mysql.yaml
        apiVersion: v1
        kind: Secret
        metadata:
          name: mysqlsecret
      data:
          username: ****
          password: ****
step2: kubectl apply -f mysql.yaml

question:
1,source /opt/bin/common/tool.sh -----k8s指令重命名
2,mysql中name必须是0~9,a-z.不能有大写或者非法字符
3,data中的name,password,必须是base64,
        echo -n username | base64

      echo -n password | base64

查看secret
step1:
查看secret
kubectl get secret mysqlsecret
查看状态
kubectl describe secret mysqlsecret
显示seceret
kubectl edit secret mysqlscret
由文本中的反编译为mingwen
echo -n ****|base64 --decode

在pod中使用volume使用secret
vim mypod.yml
apiVersion: v1
kind: Pod
metadata:
    name: mysqlpods
spec:
    containers:
    - name: mysqlpods
      image: cloud-base/mysql-mha-5.6-0.57:tag
      args:
          - /bin/bash
          - -c
          - slepp 10; touch /tmp/health; slepp 300
      volumeMounts:
       -  name: foo
          mount Path: "/etc/foo"
          readOnly: true
       volumes:
        - name: foo
           secret:
              secretName: mysqlsecret

注意:
1:args:必须带上参数 /bin/bash ,否则报错no command specified
2:mypod.yml只能修改某些blockm其余的地方改了会报错,也不会config
3:image参考/opt/bin/conFile
在pod中查看secret
source /opt/bin/common/tool.sh
pod:可以看见mysqlpods is running
kubectl exec -it mypods sh
cat /etc/foo/password;
cat /etc/foo/username;

用ENV使用secert
apiVersion: v1
kind: Pod
metadata:
    name: mysqlpods
spec:
    containers:
    - name: mysqlpods
      image: cloud-base/mysql-mha-5.6-0.57:tag
      args:
          - /bin/bash
          - -c
          - slepp 10; touch /tmp/health; slepp 300
      env:
          - name: SECRET_USERNAME
            valueFrom
                secretKeyRef:
                    name: mysqlsecret
                    key: username
          - name: SECRET_PASSWORD
            valueFrom
                secretKeyRef:
                    name: mysqlsecret
                    key: password
kubectl apply -f mysqlpods.yml
kubectl exec -it mysqlpods.sh
$echo $SECRET_USERNAME
$echo $SECRET_PASSWORD
可以看见已经有值了

使用文件与使用环境的区别:
文件可以动态更新secret:修改mysql,yml中username的值,重新部署,可以在pod中看到更新值
环境不能动态更新secret





相关文章

  • k8s secert

  • In my secert life

    今天虽是周末,却被一首歌迷住。一首很温柔的歌,像是晴朗的冬日里,午后洒下来的阳光。温暖美好。跳出的声音低沉而有魅力...

  • 什么是k8s,k8s有什么功能?

    介绍:k8s是一个docker集群的管理工具 2.1 k8s的核心功能 2.2 k8s的历史 2.3 k8s的安装...

  • k8s的主要功能

    一、什么是k8s,k8s都有什么功能? k8s是一个docker容器管理工具 二、k8s的核心功能 自愈: 重新启...

  • cloud & HPC

    K8s & HPC k8s in hpc Requirement Hello, Kubernetes newbie...

  • 一键部署kubernetes 1.6高可用集群

    本文主要适合于那些有一定 k8s基础的人, 通过本文你将学到: k8s各组件的交互原理 k8s的集群规划 k8s系...

  • k8s专题目录

    初阶k8s集群搭建 高阶k8s HA 集群搭建(一) 高阶k8s HA 集群搭建(二) docker镜像私有仓库搭...

  • Pod内进程访问k8s服务

    Pod内进程访问k8s服务 外部服务可以通过kubeconfig访问k8s服务,那k8s集群内部服务(Pos内服务...

  • k8s说明

    k8s核心组件 k8s架构图 k8s扩展功能 开启XSHELL的多终端执行命令 kubernetes在centos...

  • 阿里P8大佬呕心沥血整理 ‘阿里云 K8s 核心技能点解析笔记’

    首先,我们学习 K8s 之前要知道它 是什么?干什么用的? 什么是 K8s ? k8s全称kubernetes,这...

网友评论

      本文标题:k8s secert

      本文链接:https://www.haomeiwen.com/subject/kfmlfftx.html