当前位置: 首页 > news >正文

金华手机建站模板聊城做网站信息

金华手机建站模板,聊城做网站信息,重庆人才招聘网最新招聘2022,网站图标生成一、Secret secrets资源,类似于configmap资源,只是secrets资源是用来传递重要的信息的; secret资源就是将value的值使用base64编译后传输,当pod引用secret后,k8s会自动将其base64的编码,反编译回正常的字符…

一、Secret

secrets资源,类似于configmap资源,只是secrets资源是用来传递重要的信息的;

secret资源就是将value的值使用base64编译后传输,当pod引用secret后,k8s会自动将其base64的编码,反编译回正常的字符串;

  1. Secret 用于保存机密数据的对象。一般由于保存密码、令牌或密钥等。
    • data字段用来存储 base64 编码数据。
    • stringData存储未编码的字符串。
  2. Secret 意味着你不需要在应用程序代码中包含机密数据,减少机密数据(如密码)泄露的风险。
  3. Secret 可以用作环境变量、命令行参数或者存储卷文件。

二、创建secrets资源

1.创建工作目录

[root@k8s1 k8s]# mkdir secrets
[root@k8s1 k8s]# cd secrets/

2.尝试使用base64进行编码 

# 编码

[root@k8s1 secrets]# echo oslee | base64
b3NsZWUK

# 解码

[root@k8s1 secrets]# echo b3NsZWUK | base64 -d
oslee

3.声明式创建secrets资源

# 编辑secrets资源清单

vi 01-secret.yaml

apiVersion: v1
kind: Secret
metadata:name: s1#用户自定义的类型(Opaque为自定义类型;generic为)
type: Opaque
data: k8s: b3NsZWUKoslee: b3NsZWUK

# 创建secret资源

[root@k8s1 secrets]#  kubectl apply -f 01-secret.yaml
secret/s1 created

# 查看

[root@k8s1 secrets]# kubectl get secrets
NAME                  TYPE                                  DATA   AGE
default-token-xwhzs   kubernetes.io/service-account-token   3      23h
s1                    Opaque                                2      2m46s
[root@k8s1 secrets]# kubectl describe secret s1
Name:         s1
Namespace:    default
Labels:       <none>
Annotations:  <none>

Type:  Opaque

Data
====
k8s:    6 bytes
oslee:  6 bytes

4.响应式创建secret

[root@k8s1 secrets]# kubectl create secret generic secret-02 --from-literal=school=os --from-literal=class=lee

  1. docker-registry:创建一个给Docker registry容器镜像仓库使用的secret
  2. generic: 从本地file, directory或者literal value创建一个 secret(这是大多数情况使用的)也就是资源清单中的type:Opaque是一个意思;
  3. tls: 创建一个TLS secret

三、pod引用secret资源

1.pod资源env环境变量引用

# 创建pod资源

[root@k8s1 secrets]# cat pod.yaml  

apiVersion: v1
kind: Pod
metadata:name: m13
spec:containers:- image: nginx:1.20.1-alpinename: nginxenv: - name: secret-env01valueFrom:#声明引用sercetsecretKeyRef: #声明secret名称name: s1#声明secret的keykey: oslee- name: secret-env02valueFrom:secretKeyRef:name: secret-02key: class

# 创建资源

[root@k8s1 secrets]# kubectl apply -f pod.yaml 
pod/m13 created 

# 登录pod资源查看env变量

[root@k8s1 secrets]# kubectl exec m13 -it -- sh
/ # env

secret-env01=oslee

secret-env02=lee

2.pod资源volume存储卷引用secret资源

 # 编辑资源清单

[root@k8s1 secrets]# vi pod-env-volume.yaml 

#pod资源env环境变量方式引用secret
apiVersion: v1
kind: Pod
metadata:name: pod-secret-01
spec:containers:- name: c1image: nginx:1.20.1-alpineenv:- name: k8svalueFrom:#声明引用secret资源secretKeyRef: name: s1#声明使用secret资源中的那一个keykey: k8s---#vomlume方式引用
apiVersion: v1
kind: Pod
metadata:name: pod-secret-02
spec: #声明存储卷volumes:- name: vol-secret#声明存储卷的类型是secretsecret:#指定secret资源的名称(使用哪个secret资源?)secretName: s1containers:- name: c2image: nginx:1.24.0-alpinevolumeMounts:- name: vol-secret#挂载到容器的哪个位置路径mountPath: /secret/

# 创建资源

[root@k8s1 secrets]# kubectl apply -f pod-env-volume.yaml 
pod/pod-secret-01 created
pod/pod-secret-02 created

# 查看挂载

[root@k8s1 secrets]# kubectl exec pod-secret-01 -it -- sh

[root@k8s1 secrets]# kubectl exec pod-secret-02 -it -- sh

 3.pod资源清单指定key引用secret

[root@k8s1 secrets]# kubectl apply -f pod-path.yaml 
pod/pod-secret-03 created
[root@k8s1 secrets]# cat pod-path.yaml 

apiVersion: v1
kind: Pod
metadata:name: pod-secret-03
spec: #声明存储卷volumes:- name: vol-secret#声明存储卷的类型是secretsecret:#1,指定secret资源的名称(使用哪个secret资源?)secretName: s1#2,指定secret资源中要引用的keyitems: - key: k8spath: oslee.pathcontainers:- name: c2image: nginx:1.24.0-alpinevolumeMounts:- name: vol-secret#挂载到容器的哪个位置路径?mountPath: /secret/oslee.path#只挂在文件,不清空容器原有文件夹subPath: oslee.path

# 进入pod查看

[root@k8s1 secrets]# kubectl exec -it pod-secret-03 -- sh 

四、secret类型之-私有镜像仓库使用

  1. docker-registry:创建一个给Docker registry容器镜像仓库使用的secret
  2. generic: 从本地file, directory或者literal value创建一个 secret(这是大多数情况使用的)也就是资源清单中的type:Opaque是一个意思;
  3. tls: 创建一个TLS secret

创建Docker harbor的secret信息:

        因为,k8s拉取镜像与Docker拉取镜像是不同的方式,所以k8s需要创建一个属于自己的拉取镜像的方式;

1.harbor创建私有仓库

2.推送镜像到私有仓库

[root@k8s2 ~]# docker login harbor.oslee.com

[root@k8s2 ~]# docker tag nginx:1.20.1-alpine harbor.oslee.com/oslee-private/nginx:1.20.1-alpine
[root@k8s2 ~]# docker push harbor.oslee.com/oslee-private/nginx:1.20.1-alpine

3.响应式创建拉取镜像的secret资源

[root@k8s1 ~]# kubectl create secret docker-registry oslee-harbor --docker-username=admin --docker-password=harbor123 --docker-email=oslee@qq.com --docker-server=harbor.oslee.com
secret/oslee-harbor created

4.创建pod引用拉取镜像的secret资源

[root@k8s1 secrets]# cat pod-harbor-secret.yaml
apiVersion: v1
kind: Pod
metadata:name: pod-harbor-01
spec:#指定镜像拉取的secret资源(secret的拉取镜像类型);imagePullSecrets:- name: oslee-harborcontainers:- name: c3image: harbor.oslee.com/oslee-private/nginx:1.20.1-alpine

5.声明式创建docker registry类型的secret资源

5.1.【-o yaml】模仿系统声明式的写法

[root@k8s1 secrets]# kubectl get secrets oslee-harbor -oyaml

 5.2.base64解码查看内容

[root@k8s1 secrets]# echo eyJhdXRocyI6eyJoYXJib3Iub3NsZWUuY29tIjp7InVzZXJuYW1lIjoiYWRtaW4iLCJwYXNzd29yZCI6ImhhcmJvcjEyMyIsImVtYWlsIjoib3NsZWVAcXEuY29tIiwiYXV0aCI6IllXUnRhVzQ2YUdGeVltOXlNVEl6In19fQ== | base64 -d
{"auths":{"harbor.oslee.com":{"username":"admin","password":"harbor123","email":"oslee@qq.com","auth":"YWRtaW46aGFyYm9yMTIz"}}}[root@k8s1 secrets]# 

[root@k8s1 secrets]# echo YWRtaW46aGFyYm9yMTIz | base64 -d
admin:harbor123 

5.3根据上述信息,自己编辑secret声明式资源清单

[root@k8s1 secrets]# cat harbor-secret.yaml 
apiVersion: v1
kind: Secret
metadata:name: oslee-harbor02
type: kubernetes.io/dockerconfigjson
data:.dockerconfigjson: eyJhdXRocyI6eyJoYXJib3Iub3NsZWUuY29tIjp7InVzZXJuYW1lIjoiYWRtaW4iLCJwYXNzd29yZCI6ImhhcmJvcjEyMyIsImVtYWlsIjoib3NsZWVAcXEuY29tIiwiYXV0aCI6IllXUnRhVzQ2YUdGeVltOXlNVEl6In19fQ==

[root@k8s1 secrets]# kubectl apply -f harbor-secret.yaml 
secret/oslee-harbor02 created 

[root@k8s1 secrets]# cat pod-harbor-secret.yaml 
apiVersion: v1
kind: Pod
metadata:
  name: pod-harbor-01
spec:
  #指定镜像拉取的secret资源(secret的拉取镜像类型);
  imagePullSecrets:
  - name: oslee-harbor02
  containers:
  - name: c3
    image: harbor.oslee.com/oslee-private/nginx:1.20.1-alpine
[root@k8s1 secrets]# kubectl apply -f pod-harbor-secret.yaml
pod/pod-harbor-01 created
[root@k8s1 secrets]# kubectl get pod
NAME            READY   STATUS    RESTARTS   AGE
pod-harbor-01   1/1     Running   0          6s 

 

 

http://www.yayakq.cn/news/105307/

相关文章:

  • 工程建设标准网站山西省工程招标网
  • 哪里培训网站开发好凡科网站怎么做淘宝客
  • 南京美容网站建设南京微信网站开发
  • 中医网站建设素材国外用python做的网站
  • 影响网站用户体验无锡营销型网站建设
  • 英文网站建设方案 PPT国际物流网站模板
  • 广元市住房和城乡建设局网站分销网站
  • 做营销网站要多少钱雅虎网站优化怎么做
  • 南京建站公司wordpress apahce 静态 windows
  • 济南市城市建设规划局官方网站电子工程有限公司
  • 煤炭网站建设规划书中国域名注册
  • 那个视频网站可以做桌面背景重庆必去的十大景点
  • 网站技术报务费如何做会计分录关于网站推广
  • 厦门网站搜索优化大学生免费ppt网站
  • 公司网站 域名郑州建设局官网
  • 深圳网站优化培训代注册公司需要多少费用
  • 电商网站开发平台哪个好邢台网站推广专业服务
  • 东莞网站关键词优化龙岗区建设规划网站
  • 做期权注册网站注册了域名之后如何建立一个网站
  • 网站登录界面用什么软件做西安北郊做网站公司
  • 礼泉做网站阿里云网站建设教程视频
  • 外贸网站建设公司渠道建设一家网站多少钱
  • 推广一个网站需要什么机械制造设备类企业网站织梦模板
  • 长沙商城网站开发深圳网络推广公司
  • 郴州网站建设较好的公司做个营销型网站设计
  • 牟平网站建设专业网站建设模块维护
  • 杭州专业网站排名优化搜索排名提升
  • 珠海网站建设公司电话免费上传图片的网址
  • 聊城网站建设2016网站设计欣赏
  • 同城型网站开发wordpress 主题无法更换