logo

CentOS 环境下 Rancher 单机部署全流程指南

作者:问题终结者2025.09.17 11:04浏览量:0

简介:本文详细介绍了在 CentOS 系统上完成 Rancher 单机部署的全过程,涵盖环境准备、依赖安装、Rancher 服务部署及验证等关键步骤,为开发者提供一套可复用的部署方案。

CentOS 环境下 Rancher 单机部署全流程指南

一、部署前环境准备

1.1 系统版本要求

Rancher 2.x 版本推荐使用 CentOS 7/8 系列,需确认系统内核版本≥3.10。可通过 uname -r 命令验证,建议使用最新稳定版 CentOS 以获得最佳兼容性。对于生产环境,推荐采用 CentOS 7.9 LTS 版本,该版本经过长期验证,稳定性有保障。

1.2 硬件资源配置

单机部署最低要求:

  • CPU:4核(建议8核以上)
  • 内存:8GB(生产环境建议16GB+)
  • 磁盘:100GB可用空间(SSD优先)
  • 网络:千兆网卡

使用 free -hdf -h 命令可快速查看当前资源使用情况。对于测试环境,4核8GB配置可满足基础功能验证,但涉及大规模集群管理时,建议提升至8核16GB配置。

1.3 网络环境配置

需确保服务器:

  • 可访问互联网(用于拉取Docker镜像)
  • 开放端口:80/443(Web访问)、2376/2379(Docker守护进程)、10250(Kubelet)
  • 关闭SELinux(临时:setenforce 0;永久:修改/etc/selinux/config
  • 配置防火墙规则:
    1. firewall-cmd --permanent --add-port={80,443,2376,2379,10250}/tcp
    2. firewall-cmd --reload

二、Docker环境安装与配置

2.1 安装Docker CE

Rancher依赖Docker运行,推荐使用最新稳定版:

  1. # 安装依赖
  2. yum install -y yum-utils device-mapper-persistent-data lvm2
  3. # 添加Docker仓库
  4. yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  5. # 安装Docker CE
  6. yum install -y docker-ce docker-ce-cli containerd.io
  7. # 启动服务
  8. systemctl enable docker
  9. systemctl start docker

2.2 Docker配置优化

创建/etc/docker/daemon.json文件进行高级配置:

  1. {
  2. "exec-opts": ["native.cgroupdriver=systemd"],
  3. "log-driver": "json-file",
  4. "log-opts": {
  5. "max-size": "100m"
  6. },
  7. "storage-driver": "overlay2",
  8. "insecure-registries": ["rancher-server-ip:5000"] # 如需私有仓库
  9. }

应用配置后重启服务:

  1. systemctl daemon-reload
  2. systemctl restart docker

2.3 验证Docker安装

执行以下命令验证:

  1. docker version
  2. docker run hello-world

应看到”Hello from Docker!”的输出,表明安装成功。

三、Rancher服务部署

3.1 单机部署模式选择

Rancher支持三种单机部署方式:

  1. Docker容器部署(推荐):快速启动,资源隔离
  2. K3s集成部署:轻量级K8s发行版
  3. RKE部署:Rancher Kubernetes Engine

本文重点介绍第一种Docker容器部署方式,其优势在于:

  • 部署简单(单条命令完成)
  • 资源占用低(约1GB内存)
  • 升级方便(重新运行容器即可)

3.2 核心部署命令

执行以下命令启动Rancher:

  1. docker run -d --restart=unless-stopped \
  2. -p 80:80 -p 443:443 \
  3. -v /opt/rancher:/var/lib/rancher \
  4. rancher/rancher:latest

参数说明:

  • -d:后台运行
  • --restart:异常时自动重启
  • -p:端口映射
  • -v:数据持久化(避免容器删除导致数据丢失)

3.3 部署后验证

  1. 访问 https://<服务器IP>,应看到Rancher登录界面
  2. 检查容器状态:
    1. docker ps | grep rancher
  3. 查看日志
    1. docker logs -f <容器ID>

四、常见问题解决方案

4.1 端口冲突处理

若80/443端口被占用,可通过以下方式解决:

  1. 停止占用服务:
    1. systemctl stop httpd # 如Apache占用
  2. 修改Rancher端口映射:
    1. docker run -d -p 8080:80 -p 8443:443 ... rancher/rancher
  3. 使用Nginx反向代理(推荐生产环境使用)

4.2 数据迁移与备份

数据持久化目录/opt/rancher包含:

  • 证书文件(/opt/rancher/server/tls
  • 数据库/opt/rancher/server/mysql
  • 配置文件(/opt/rancher/etc

备份方法:

  1. tar -czvf rancher-backup-$(date +%F).tar.gz /opt/rancher

4.3 版本升级流程

  1. 下载新版本镜像:
    1. docker pull rancher/rancher:v2.6.3
  2. 停止并删除旧容器(保留数据卷):
    1. docker stop <旧容器ID>
    2. docker rm <旧容器ID>
  3. 启动新版本容器(使用相同数据卷)

五、最佳实践建议

5.1 安全加固措施

  1. 启用HTTPS(自动生成自签名证书,生产环境应替换为CA证书)
  2. 设置访问控制:
    • 启用本地认证
    • 配置LDAP/AD集成
  3. 定期更新:
    • 关注Rancher安全公告
    • 每季度进行版本升级

5.2 性能优化技巧

  1. 调整Docker资源限制:
    1. # /etc/docker/daemon.json
    2. {
    3. "default-ulimits": {
    4. "nofile": {
    5. "Name": "nofile",
    6. "Hard": 65535,
    7. "Soft": 65535
    8. }
    9. }
    10. }
  2. 对于大规模集群管理,建议:

5.3 监控与维护

  1. 基础监控:
    1. docker stats <容器ID>
  2. 推荐监控工具:
    • Prometheus + Grafana(Rancher内置支持)
    • cAdvisor(容器级监控)
  3. 日志收集:
    • 配置ELK栈
    • 或使用Rancher内置日志功能

六、总结与展望

通过本文的详细指导,开发者可在CentOS系统上快速完成Rancher单机部署。这种部署方式特别适合:

  • 开发测试环境
  • 小型生产环境(≤10个节点)
  • 边缘计算场景

对于更大规模的部署,建议考虑Rancher的高可用部署方案(三节点Etcd集群)。未来可进一步探索:

  • Rancher与Istio的服务网格集成
  • 多云环境下的统一管理
  • 基于Rancher的GitOps实践

通过合理配置和持续优化,Rancher单机部署可提供稳定可靠的容器管理平台,助力企业数字化转型。

相关文章推荐

发表评论