以前咱们学习了ConfigMap的时候,咱们说ConfigMap这个资源对象是Kubernetes当中很是重要的一个对象,可是若是要是密码之类的文件存放到这里就不合适了,k8s已经为咱们准备了另外的一种方式专门保存密码的文件,就是咱们今天要介绍的secret。node
Secret用来保存敏感信息,例如密码、OAuth 令牌和 ssh key等等,将这些信息放在Secret中比放在Pod的定义中或者docker镜像中来讲更加安全和灵活。docker
接下来咱们验证一下,就拿k8s结合harbor仓库进行演示,在演示的时候咱们须要先建立一个仓库,就是harbor仓库,能够参考我以前的文档
https://blog.51cto.com/xiaorenwutest/2161180安全
这里先看一下效果ssh
在建立完成harbor以后咱们首先须要node节点和harbor进行认证一下ide
修改两处学习
这里修改docker配置文件,要指定harbor的配置文件测试
而后重启一下docker服务spa
我这里是应为已经登录过了,因此就不用登陆直接就上来了3d
能够获得,有了上面的就能够了server
接下来咱们测试一下是否能够
往下拉个镜像
成功了
好了接下来咱们配置一下k8s当中的secret
建立一个yaml
kubectl create secret docker-registry harborsecret --docker-server=10.20.2.116 --docker-username=tty --docker-password=123.asdPP --docker-email=lxftty@163.com --namespace=default --dry-run -o yaml
接下来配置pod的yaml
咱们启动一下
说明没有登录
接下来启动一下secret
此次是否是就启动了呢
【注意】:私有的项目须要配置这个,若是是公开的有上面的两个就能够了,固然也能够都配置上,
另外还有一种方法建立secret
是否是和上面的同样,而后启动也是能够的,咱们测试一下
启动了把,两种方法建立均可以,可是我比较喜欢第一种,能够本身定义yaml文件比较方便
好了今天的演示到这里,欢迎你们私信留言