一、什么是k8s?
简单来说就是k8s,具有容器编排功能(管理调度成千上万个容器,不挂),来自动化管理容器应用。
二、k8s到底作用是什么?
1、自动部署
需要跑几个副本,直接输入就可以,不用传统手动部署。
2、自动扩缩
访问量进来了会自动加副本,来缓解压力,访问量小了,会自动减少副本,节约资源。
3、支持滚动更新&回滚
发现新版本不会中断服务,版本有问题可以一键回滚原来版本
4、自愈,高可用
容器崩了,宕机,k8s会自动重启,重建,迁移,保证不影响服务
5、负载均衡&服务发现
自动给服务分配ip,域名,流量
6、统一管理集群
不管多少台服务器,都用一个命令来管理。
三、如何在k8s上部署服务,外部如何访问。
示例、在k8s上部署node_exporter服务。
条件
1、最少准备两个系统
2、首先需要国内源镜像网站
https://docker.aityp.com/
3、搭建一个ranche k8s平台
第一步、创建k8s集群


这里是导入集群的选项
分为两种导入方式
1、托管 Kubernetes 提供商导入
Amazon EKS:导入 AWS 上的托管 Kubernetes 服务。
Azure AKS:导入 Azure 上的托管 Kubernetes 服务(当前被选中)。
Google GKE:导入 Google Cloud 上的托管 Kubernetes 服务。
2、通用 Kubernetes 集群导入
Generic:导入任何标准的 Kubernetes 集群,无论是自建、本地部署还是其他云厂商的集群。
这里我们用通用generic导入
创建集群名称


这里是Rancher通过generic导入kubernetes集群的操作界面,核心是让你在目标集群上执行命令,把他接入到Rancher管理中心。
第二部、进入集群开始部署服务
1、development部署服务





添加标签



同时修改一下yaml


镜像源
https://docker.aityp.com/image/quay.io/prometheus/node-exporter:v1.9.1
2、配置service



这里也需要配置和deploment一样的标签




pod加入了代表就成功了。
web浏览器
四、健康检查