Kubernetes学习

Kubernetes学习

1. KuberSphere实战

  1. 多租户系统
    1. 每一个Kubernetes集群的KubeSphere只可以有一个admin用户,在KubeSphere中可以创建多个用户,每个用户有不同的权限,进行不同的管理![[attachments/Pasted image 20241118130506.png]]![[attachments/Pasted image 20241118131822.png]]在这里插入图片描述

    2. 只有一个admin平台管理员,可以管理平台内的所有资源

    3. 由admin创建平台用户管理员,相当于HR,对用户信息进行管理

    4. HR可以创建平台企业空间管理员,相当于大老板,可以创建多个企业空间,类似于分公司

    5. 其余的都是普通用户,在被邀请进入企业空间或者集群之前没有任何资源操作权限

    6. 由平台用户管理员HR来创建用户,由平台企业空间管理员来创建各个企业空间,然后指定各个企业空间的管理员,然后企业空间内创建各个项目并邀请用户加入项目进行开发

    7. 整个集群是一个公司,可以创建多个企业空间分公司,在分公司内开发各种服务

  2. 部署应用
    1. 应用的部署方式(无状态容器、有状态中间件、守护进程集)、应用的数据挂载PV&PVC(数据卷挂载、配置文件挂载ConfigMap)、应用的可访问性Service(集群内ClusterIP、集群外NodePort)

    2. 在指定的工作负载(Deployment(无状态微服务)、StatefulSet(有状态中间件)、DaemonSet)上部署应用 ![[attachments/Pasted image 20241118213431.png]]

    3. 通过服务Service为部署的pod配置服务发现和负载均衡,及集群内的ClusterIP,或者集群外的NodePort

    4. 通过创建存储卷实现PV&PVC,将pod容器中的服务的数据挂载

    5. 通过创建配置集ConfigMap将容器中配置文件进行挂载,对其修改会自动更新到配置文件中,但必须重启后才会生效

  3. MySQL部署分析
    1. 将MySQL镜像运行在pod内部的容器中,然后将MySQL的数据内容挂载到PV&PVC中,并将配置文件挂载到指定的ConfigMap配置集中,并为MySQL创建一个Service以使得服务之间可以相互访问
    2. 根据要部署服务所需要的数据挂载和配置文件挂载创建对应的PV&PVC和ConfigMap配置集,并在DockerHub中查看指定服务的镜像安装是否需要额外的环境变量等参数(如初始密码),然后在KubeSphere中创建指定的PV和CM,再选择对应的工作负载创建应用
    3. 选择指定的镜像并配置环境遍历以及其他参数,然后挂载创建好的PV和CM配置集配置完成后直接创建就可以创建一个pod来运行该服务
    4. 会自动创建一个Service,但只是ClusterIP模式只可以在同一个VPC下的集群进行访问,而会有一个DNS,就是 服务名.项目名 ,此时集群中的服务通过该 服务名.项目名 就可以直接访问该服务,而不需要指定IP
    5. 如果想从外部访问指定的服务,可以为其手动部署一个 NodePort 类型的Service,此时就会在集群中每个机器为该Service分配一个端口,且该端口会与pod容器中指定的端口映射,此时访问集群任一个机器的指定端口就可以访问容器中的服务![[attachments/Pasted image 20241118222431.png]]6. ![[attachments/Pasted image 20241118214601.png]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值