pod 挂载点 mysql_Pod挂载(Secret )

一种特殊的Volume: Projected Volume ,你可以把它翻译为“投射数据卷”。

Ps:Projected Volume 是 Kubernetes v1.11 之后的新特性

在 Kubernetes 中,有几种特殊的 Volume,它们存在的意义不是为了存放容器里的数据,也不是用来进行容器和宿主机之间的数据交换。这些特殊 Volume 的作用,是为容器提供预先定义好的数据。所以,从容器的角度来看,这些 Volume 里的信息就是仿佛是被 Kubernetes“投射”(Project)进入容器当中的。这正是 Projected Volume 的含义。

到目前为止,Kubernetes 支持的 Projected Volume 一共有四种:

1.Secret(存放数据库的 Credential 信息)

2.ConfigMap(ConfigMap 保存的是不需要加密的,应用所需的配置信息)

3.Downward API(让 Pod 里的容器能够直接获取到这个 Pod API 对象本身的信息)

4.Server Account(定义授权信息,特殊的Secret)

Secret 最典型的使用场景,莫过于存放数据库的 Credential 信息。

# secret-host.yaml

apiVersion: v1

kind: Pod

metadata:

name: nginx-test

spec:

containers:

- name: nginx-secret

image: busybox

args:

- sleep

- "86400"

volumeMounts:

- name: rousecret

mountPath: "/projected-volume" #将Volume挂载到容器内部的/projected-volume目录下

readOnly: true

volumes:

- name: rousecret

secret:

secretName: rousecret

#secret.yaml

apiVersion: v1

kind: Secret

metadata:

name: rousecret

type: Opaque

data:

user: YWRtaW4=

pass: MTIzNDU2

这里的user以及pass均使用base6转码:

[root@k8s-master pods]# echo -n "admin" | base64

YWRtaW4=

[root@k8s-master pods]# echo -n "123456" | base64

MTIzNDU2

具体步骤:

kubectl create -f secret.yaml #创建scerets

kubectl create -f secret-host.yaml #创建容器

kubectl exec -it nginx -c nginx-secret sh #进入容器

/ # cat /projected-volume/..data/user

admin

/ # cat /projected-volume/..data/pass

123456

[root@k8s-master pods]# kubectl get secrets

NAME TYPE DATA AGE

rousecret Opaque 2 51m

修改user以及pass值

#方法一

[root@k8s-master pods]# echo "root" | base64

cm9vdAo=

修改secret.yaml中的值

将secret.yaml中user的值替换为上面的值

kubectl apply -f secret.yaml

之后进入容器内即可查看user的值已经改变

方法二

kubectl edit secrets rousecret

同样的,将上面转码得到的值应用到打开的文件中

再进入容器查看时,user以发生改变

当然,也可以把user与pass分开创建

apiVersion: v1

kind: Pod

metadata:

name: test-projected-volume

spec:

containers:

- name: test-secret-volume

image: busybox

args:

- sleep

- "86400"

volumeMounts:

- name: mysql-cred

mountPath: "/projected-volume"

readOnly: true

volumes:

- name: mysql-cred

projected:

sources:

- secret:

name: user

- secret:

name: pass

cat ./username.txt

admin

cat ./password.txt

c1oudc0w!

kubectl create secret generic user --from-file=./username.txt

kubectl create secret generic pass --from-file=./password.txt

[root@k8s-master pods]kubectl get secrets

NAME TYPE DATA AGE

user Opaque 1 51m

pass Opaque 1 51m

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/526817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

lambda 流 peek java_JDK8 流与λ表达式

λ表达式什么是λ表达式λ表达式有三部分组成:参数列表,箭头(->),以及一个表达式或者语句块。public int add(int x, int y) {return x y;}转换为λ表达式(int x, int y) -> x y;去除参数类型(x, y) -> x y;无参 以及 只有一个参…

理解java虚拟机工作后了解吗_JAVA入门到再次入门——深入理解JAVA虚拟机(二)|七日打卡...

前言为什么叫做入门到到再次入门请参考前一篇或个人博客,在此不再赘述,嗯哼,了解了JVM的基本运行流程以及内存结构,算是初步认识了JVM,跟着课本往前走,继续了解根据JVM的内存模型探索java当中变量的可见性以…

java访问错误404_如何解决 Java web 项目中的 404 错误

在使用 Tomcat 进行 Java Web 开发的时候,经常会遇到以下 HTTP 404 错误:错误代码为 HTTP 404(未找到),描述信息是:“The origin server did not find a current representation for the target resource or is not willing to di…

java double 的精度_Java Double的精度问题

Java.text类 DecimalFormatjava.lang.Objectjava.text.Formatjava.text.NumberFormatjava.text.DecimalFormatvoid setMaximumFractionDigits(int newValue) 设置某个数的小数部分中所允许的最大数字位数。void setMinimumFractionDigits(int newValue) …

java餐饮管理系统图片,基于jsp的酒店餐饮管理系统-JavaEE实现酒店餐饮管理系统 - java项目源码...

基于jspservletpojomysql实现一个javaee/javaweb的酒店餐饮管理系统, 该项目可用各类java课程设计大作业中, 酒店餐饮管理系统的系统架构分为前后台两部分, 最终实现在线上进行酒店餐饮管理系统各项功能,实现了诸如用户管理, 登录注册, 权限管理等功能, 并实现对各类酒店餐饮管…

php 验证码一直不对,ThinkPHP验证码老是出错怎么办

ThinkPHP验证码老是出错的解决办法:1、找到服务器php配置文件php.ini在网站根目录下建一个info.php文件。例如:D:\wwwRoot\wp 这个是网站的根目录,在此目录下,新建一个txt文档,输入如下代码:然后另存为info…

小皮面板有php环境吗,体验phpStudy小皮面板创建LAMP/LNMP系统和建站图文

在国庆节后老 左有看到原phpStudy面板新的Linux面板系统更新发布取名小皮面板(phpStudy Linux系统初次体验 – 一键安装phpStudy面板查看功能),初次体验这款面板之后我们肯定会会当前比较热门的宝塔面板作为比较,有些人说UI和功能上有所参考,…

php 断点续传 暂停,PHP 断点续传实例详解

在做一个案例,要给客户端做断点续传的服务,断点续传主要是HTTP协议中的Content-Range报头。其理解如下:Content-Range:响应资源的范围。可以在多次请求中标记请求的资源范围,在连接断开重新连接时,客户端只…

如何在php中插入数据并修改,php怎么同时向2张表里插入数据

情况是这个样子的:我要做一个发消息的表,因为接受人可能是多个,所以又给接收人一单独的表,(这种方案好还是全部都放到一张表里好点呢?)2张表的字段如下:message_id是第一张表的主键,如果收件人有…

java设计模式之道文字版,Java Web设计模式之道 PDF

资源名称:Java Web设计模式之道 PDF第一部分 仙人指路——设计模式简介第1章 设计模式概述1.1 设计模式是什么1.2 软件设计模式的发展历程1.3 作者阐述软件设计模式的主要方式第二部分 设计红宝书——设计模式原则详解第2章 设计原则之开闭原则2.1 何谓开闭原则2.2 …

java上传excel文件代码,求java把上传文件的excel表中数据存入数据库中.实现录入的代码?...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼CREATE TABLE [dbo].[p_bom_user_info] ([ID] varchar(50) NULL ,[SESAID] varchar(200) NULL ,[StaffNo] varchar(200) NULL ,[NotesID] varchar(200) NULL ,[ACName] varchar(100) NULL ,[BusinessUnit] varchar(100) NULL ,[Com…

php开发视频播放顺序,请问关于php代码运行顺序问题

麻烦会的朋友帮忙回答下 以下的问题, 谢谢啦。在网上下载了套代码。 如下 admin.php 文件:对于以下这段代码, 究竟代码是怎么跑的呢?也就是比如说 以下的代码,什么时候 才会跑 if ($device ipad) 这句代码呢&#xff…

python文件操作模式是什么,python --文件操作模式详解

#f open(r"aaa/a.txt",modert) # f的值是一种变量,占用的是应用程序的内存空间,此时牵扯的是两个方面的资源#print(f)##2.操作文件:读/写文件,应用程序对文件的读写请求都是向操作系统调用,然后由操作系统控制把硬盘把输入读入内存…

php 中文转成url,php字符转URL地址的函数

php字符转URL地址的函数php提供了urlencode()、urldecode()、rawurlencode()、rawurldecode()函数了,利用它就可以直接转换URL地址。下面是小编为大家带来的.php字符转URL地址的函数,欢迎阅读。php字符转URL地址的函数代码如下function tourl($str) {$st…

php和ajax的同步和异步请求,ajax 同步请求和异步请求的差异分析_javascript技巧

ajax同步和异步的差异, 先看2段代码:代码一:Synchronize function(url,param) {function createXhrObject() {var http;var activeX [ "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP" ];try …

matlab变量由非标量,matlab中的if语句

有条件性地执行语句语法if expressionstatementsend描述MATLAB计算表达式,如果产生一个逻辑真或者非零结果,然后就执行一条或者多条MATLAB命令语句。当有嵌套if时,每一个if必须和一个相应的end匹配。当你在if语句里面嵌套使用else if或者else…

如何用oracle查看内存使用情况,oracle运维08内存使用情况分析查看

1、SGA、PGA应用状况查问;select name,total,round(total-free,2) used, round(free,2) free,round((total-free)/total*100,2) pctused from(select SGA name,(select sum(value/1024/1024) from v$sga) total,(select sum(bytes/1024/1024) from v$sgastat where …

rodbc 连接oracle,R語言 使用RODBC連接oracle數據庫

使用R語言有多種包可以連接oracle數據庫,我今天在這里講一下使用使用RODBC連接oracle數據庫。1. 如果你的本地是windows系統的話,你需要安裝oracle客戶端。2. 然后需要在ODBC管理者界面配置你要進行連接的數據庫數據及使用的驅動等信息。如下圖所示&…

oracle实验七 答案,Oracle表的常用查询实验(七)

Oracle表的常用查询实验(七)1.问题描述:有一个商品信息表,该表反应了各种商品的销售情况,一个产品是按照gid和gname两个字段来区分的,一个产品可能会有多个型号。create table T_Goods(Id int primary key,GId varchar2(10) not n…

调用oracle常用方法,区分Oracle和SQL Server常用函数调用方法

一、数学函数1.绝对值S:select abs(-1) valueO:select abs(-1) value from dual2.取整(大)S:select ceiling(-1.001) valueO:select ceil(-1.001) value from dual3.取整(小)S:select floor(-1.001) valueO:select floor(-1.001) value from dual4.取整(截取)S:select cast(-1.…