一、概述
Rancher 是一个开源的容器管理平台,它为企业提供了一个简化容器化应用部署、管理和扩展的工具。Rancher 提供了一套完整的容器服务堆栈,支持 Docker 和 Kubernetes,并且可以在任何基础设施上运行,包括物理服务器、虚拟机、公有云和私有云。
以下是 Rancher 的一些主要特点和功能:
- 多集群管理:Rancher允许您集中管理多个 Kubernetes 集群、Docker Swarm 集群和独立的 Docker 容器。这使得在多云、混合云和多地理位置的环境中管理和部署容器化应用变得更加简便。
- 用户和权限管理:Rancher 提供了灵活的用户和权限管理功能,可以定义团队和角色,并为用户分配适当的权限。这使得团队能够协作,并根据需要访问和管理不同的资源。
- 应用目录和图表:Rancher 提供了一个应用目录,其中包含了许多预定义的 Helm Charts 和应用模板。用户可以通过图形界面轻松地部署和管理这些应用。
- 内置监控和日志:Rancher 集成了监控和日志功能,可以为容器化应用提供实时的性能和状态信息。这使得用户能够轻松地监视应用程序的运行状况、分析日志以及进行故障排除。
- 自动化升级和回滚:Rancher 管理着集群中所有的节点和应用程序,并提供了自动化升级和回滚的功能。这使得用户能够轻松地升级集群的各个组件和应用,同时保持高可用性。
- 多云支持:Rancher 可以在各种基础设施上运行,包括云、物理服务器和虚拟机。它支持 AWS、Azure、Google Cloud Platform(GCP)等公有云平台,同时也能够在私有云或裸机上运行。
- 弹性伸缩和负载均衡:Rancher 提供了弹性伸缩和负载均衡的功能,允许用户根据负载自动扩展应用实例数量,并确保流量均匀地分配到不同的容器实例。
- 社区和生态系统:Rancher 拥有庞大的社区和丰富的生态系统,为用户提供了大量的支持和插件。这包括与其他 DevOps 工具的集成,以及可以扩展 Rancher 功能的插件和应用。
总体而言,Rancher 提供了一个综合的容器管理平台,使得容器化应用的部署、管理和扩展变得更加简单和灵活。
图片
如果小伙伴想直接部署在k8s集群上,可以参考我这篇文章:【云原生】k8s 管理平台 rancher
官方文档:https://docs.ranchermanager.rancher.io/zh/GitHub:https://github.com/rancher/rancher-docs
二、开始编排部署 Rancher
1)部署 docker
# 安装yum-config-manager配置工具
yum -y install yum-utils
# 建议使用阿里云yum源:(推荐)
#yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装docker-ce版本
yum install -y docker-ce
# 启动并开机启动
systemctl enable --now docker
docker --version
2)部署 docker-compose
curl -SL https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
3)创建网络
# 创建
docker network create bigdata
# 查看
docker network ls
4)构建镜像
docker pull rancher/rancher
docker tag rancher/rancher registry.cn-hangzhou.aliyuncs.com/bigdata_cloudnative/rancher:latest
docker push registry.cn-hangzhou.aliyuncs.com/bigdata_cloudnative/rancher:latest
5)编排 docker-compose.yaml 部署
docker-compose.yml
version: '3'
services:
rancher:
restart: always
privileged: true
image: registry.cn-hangzhou.aliyuncs.com/bigdata_cloudnative/rancher:latest
container_name: rancher
volumes:
- ./data:/var/lib/rancher
- /etc/resolved.conf:/etc/resolved.conf
environment:
- TZ=Asia/Shanghai
- CATTLE_BOOTSTRAP_PASSWORD=admin123456
ports:
- 8080:80
- 1443:443
networks:
- bigdata
# 连接外部网络
networks:
bigdata:
external: true
启动服务
docker-compose -f docker-compose.yml up -d
访问:https://192.168.182.110:1443/,记得更换自己的地址哦!!!
图片
获取登录密码
# 上面设置了密码,CATTLE_BOOTSTRAP_PASSWORD=admin123456,如果没设置密码可以通过一下命令获取默认密码。账号:admin
docker logs rancher 2>&1|grep "Bootstrap Password:"
账号/密码:admin/admin123456
6)接入 K8s 集群
rancher上创建集群:
集群管理→导入已有集群→导入已有集群
图片
图片
图片
图片
1)部署 k8s 集群测试(已有可忽略)
k8s 环境安装之前写过很多文档,可以参考我以下几篇文章:
- 【云原生】k8s 离线部署讲解和实战操作
- 【云原生】k8s 环境快速部署(一小时以内部署完)
2)k8s 上执行命令接入集群
图片
curl --insecure -sfL https://192.168.182.110:1443/v3/import/44j4gntcp6cd4j8cml7wbpbspspkt5l5vq28bztg94bdzhhhh6qs4h_c-m-6jqmld27.yaml | kubectl apply -f -
图片
查看部署情况
kubectl get pods -A
图片
等一段时间就可以看到导入的集群是Active了
图片
查看监控面板
图片