首页 > 其他分享 >k8s yaml文件快速阅读理解

k8s yaml文件快速阅读理解

时间:2023-01-03 13:44:51浏览次数:47  
标签:文件 k8s Service 端口 yaml 3306 Endpoints 链接

apiVersion:此处值是v1,这个版本号需要根据安装的Kubernetes版本和资源类型进行变化,记住不是写死的。
kind:此处创建的是Pod,根据实际情况,此处资源类型可以是Deployment、Job、Ingress、Service等。
metadata:包含Pod的一些meta信息,比如名称、namespace、标签等信息。
spec:包括一些container,storage,volume以及其他Kubernetes需要的参数,以及诸如是否在容器失败时重新启动容器的属性。可在特定Kubernetes API找到完整的Kubernetes Pod的属性。

kubectl api-versions  #查看apiVersion

常见的kind类型:

(1)Endpoints:Endpoints可以把外部的链接到k8s系统中(可以理解为引用外部资源,如将一个外部mysql连接到k8s中)

apiVersion: v1
kind: Endpoints
metadata:
  name: suncat-endpoints
subsets:
  - addresses: # 代理ip
      - ip: 192.168.14.144
    ports:
      - port: 3306 # 服务的端口
        protocol: TCP
        name: http
 
---
 
apiVersion: v1
kind: Service
metadata:
  name: suncat-endpoints # 这里的名称要和上面一样才能关联
spec:
  ports:
    - port: 3306
      targetPort: 3306
      protocol: TCP
      name: http

(1)首先我们看到,我们定义了名为suncat-endpoints的Endpoints,同时往suncat-endpoints配置了代理IP以及服务的端口。

(2)接着我们看下一个,以---分隔符隔开的另一个类型Service,定义了一个名为suncat-endpoints的Service,同时往该Service中配置内部端口映射到Pod暴露出的端口port: 3306,以及对外暴露的端口号targetPort: 3306

总结:通过配置Endpoints以及Service,Endpoints将k8s的端口链接到外部mysql端口,而Service将k8s中内部的端口映射到k8s端口,以此就完成了pod应用访问外部链接。

(2)Service:部署一个内部虚拟IP,其他deployment可以链接。(可以简单理解为K8S的端口映射,如外部3444端口映射到pod应用中80端口)

(3)Secrets:用于存储和管理一些敏感数据,比如密码,token,密钥等敏感信息。(可以理解为ssh中的密钥)

(4)Deployment:部署一个Pod,内部只能链接service,无法互相链接。(可以简单理解为一个pod应用的部署工具,即使部署的应用挂了还能重启,但只能链接service服务

  (5)  Serviceaccount: 服务账号,它是指pod中一种应用程序运行托管在k8s集群上,想访问k8s集群上的apiserver时,需要的认证信息,包括:用户名、账号、密码等等。。

标签:文件,k8s,Service,端口,yaml,3306,Endpoints,链接
From: https://www.cnblogs.com/libruce/p/17021832.html

相关文章

  • 部署 K8S可视化工具dashboard
    vimdashboard.yamlapiVersion:v1kind:Namespacemetadata:name:kubernetes-dashboard---apiVersion:v1kind:ServiceAccountmetadata:labels:k8s......
  • 局域网 批量大文件上传下载
    ​ 前言文件上传是一个老生常谈的话题了,在文件相对比较小的情况下,可以直接把文件转化为字节流上传到服务器,但在文件比较大的情况下,用普通的方式进行上传,这可不是一个好......
  • 基于linux下的samba文件共享系统
    SMB文件共享:服务端口:通常使用TCP/445进行所有连接。还使用UDP137,UDP138和TCP/139进行向后兼容。主配置文件:/etc/samba/smb.conf配置环境:准备两台虚拟机,进行配置IP,y......
  • 基于Linux下的临时文件的管理
    对临时文件的管理:[root@foundation21cron.d]#cd/usr/lib/tmpfiles.d/ 切换路径[root@foundation21tmpfiles.d]#vimwestos.conf  [root@foundation21tmpfiles.d]......
  • k8s中利用nsenter命令代替容器中安装telnet检查网络
    命令介绍nsenter命令是一个可以在指定进程的命令空间下运行指定程序的命令。它位于util-linux包中。一个最典型的用途就是进入容器的网络命令空间。相当多的容器为了轻量......
  • 电脑端微信dat文件怎么打开
    1-2电脑端的微信,在聊天过程中收发的图片都是以DAT文件保存在电脑里,加密的,一般是不能直接打开的。但是图片在电脑中占用的空间非常大,如果是平常工作的微信,会接收到很多图片,时......
  • 电脑版微信dat文件用什么软件打开
    1-4一般来说,凡是说到微信电脑版的DAT文件,指的都是聊天过程中收发的图片,加密保存在电脑里。这些文件正常情况下也只能在微信登录后,在微信里查看,因为微信加密的当然只有微信才......
  • nginx快速查看配置文件的方法
    nginx的配置放在nginx.conf文件中,一般我们可以使用以下命令查看服务器中存在的nginx.conf文件。locatenginx.conf/usr/local/etc/nginx/nginx.conf/usr/local/etc/nginx/ng......
  • 用Xftp给linux虚拟机传输文件时失败:Permission is not allowed!
    一直提示错误:点开发现了传输错误信息 Permissionisnotallowed!意思就是权限不够,那就到虚拟机更改该文件夹的权限。sudochmod777opt ......
  • 【服务器数据恢复】EMC存储Zfs文件系统下raid5崩溃的数据恢复案例
    服务器存储数据恢复环境:某公司一台EMC存储,12块硬盘组成raid5,2块热备盘;Zfs文件系统。服务器存储故障:硬盘故障导致存储崩溃。服务器存储数据恢复过程:1、对故障存储所有......