目录
1、安装 rancher
2、登录 Rancher 平台
3、Rancher 管理已存在的 k8s 集群
4、Rancher 部署监控系统
5、使用 Rancher 仪表盘管理 k8s 集群
以创建 nginx 服务为例
创建名称空间 namespace
创建 Deployment 资源
创建 service
1、安装 rancher
在 所有 node 节点下载 rancher-agent 镜像
docker pull rancher/rancher-agent:v2.5.7
在 rancher 节点下载 rancher 镜像
docker pull rancher/rancher:v2.5.7
docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged --name rancher rancher/rancher:v2.5.7
--restart=unless-stopped 表示在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
docker ps -a | grep rancher
30db805e06e4 rancher/rancher:v2.5.7 "entrypoint.sh" 12 seconds ago Up 11 seconds 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp rancher
2、登录 Rancher 平台
需要先等一会儿,再浏览器访问 http://192.168.10.40 ,由于未使用授信证书,会有报警,忽略即可
登录后如是英文页面,可点击右下角语言选项选择中文
3、Rancher 管理已存在的 k8s 集群
选择【添加集群】,点击【导入】
【集群名称】设置为 k8s-cluster,点击【创建】
选择复制第三条命令绕过证书检查导入 k8s 集群
#在 k8s 控制节点 master01 上执行刚才复制的命令,如第一次执行报错,再执行一次即可
curl --insecure -sfL https://192.168.10.40/v3/import/26jb2794xzbgdltvsctkrtr8xh7lhqphzj6vdkdtqx5hptjt84gq9q_c-h2rdb.yaml | kubectl apply -f -
kubectl get ns
NAME STATUS AGE
cattle-system Active 32s
default Active 47h
ingress-nginx Active 19h
kube-flannel Active 47h
kube-node-lease Active 47h
kube-public Active 47h
kube-system Active 47h
kubectl get pods -n cattle-system -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
cattle-cluster-agent-8d9ccb78f-rml2p 1/1 Running 0 30s 10.244.2.16 node02 <none> <none>
4、Rancher 部署监控系统
点击【启用监控以查看实时监控】
【监控组件版本】选择 0.2.1,其他的默认即可
点击【启用监控】,启动监控时间可能比较长,需要等待10分钟左右
5、使用 Rancher 仪表盘管理 k8s 集群
以创建 nginx 服务为例
点击【仪表盘】进入 k8s 集群仪表盘界面
创建名称空间 namespace
点击左侧菜单【Namespaces】,再点击右侧【Create】
【Name】输入 dev,【Description】选填可自定义
点击右下角【Create】
创建 Deployment 资源
点击左侧菜单【Deployments】,再点击右侧【Create】
【Namespace】下拉选择 dev,【Name】输入 nginx-dev,【Replicas】输入 3
点击中间选项【Container】,【Container Image】输入 nginx:1.14,【Pull Policy】选择 IfNotPresent
在【Pod Labels】下点击【Add Lable】,【Key】输入 app,【Value】输入 nginx
点击中间选项【Labels and Annotations】,点击【Add Label】,【Key】输入 app,【Value】输入 nginx
点击右下角【Create】
创建 service
点击左侧菜单【Services】,再点击右侧【Create】
点击【Node Port】
【Namespace】下拉选择 dev,【Name】输入 nginx-dev
【Port Name】输入 nginx,【Listening Port】输入 80,【Target Port】输入 80,【Node Port】输入 30180
点击中间选项【Selectors】,【Key】输入 app,【Value】输入 nginx
点击右下角【Create】
点击【nginx-dev】查看 service 是否已关联上 Pod
点击 service 资源的节点端口 30180/TCP,可以访问内部的 nginx 页面了