百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

通过 docker-compose 快速部署 Rancher 保姆级教程

wptr33 2025-01-27 00:38 22 浏览

一、概述

Rancher 是一个开源的容器管理平台,它为企业提供了一个简化容器化应用部署、管理和扩展的工具。Rancher 提供了一套完整的容器服务堆栈,支持 DockerKubernetes,并且可以在任何基础设施上运行,包括物理服务器、虚拟机、公有云和私有云。

以下是 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 环境安装之前写过很多文档,可以参考我以下几篇文章:

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了



查看监控面板


通过 docker-compose 快速部署 Rancher 保姆级教程就先到这里了,有任何疑问也可关注我公众号:大数据与云原生技术分享,进行技术交流,如本篇文章对您有所帮助,麻烦帮忙一键三连(点赞、转发、收藏)~

相关推荐

【推荐】一款开源免费、美观实用的后台管理系统模版

如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!项目介绍...

Android架构组件-App架构指南,你还不收藏嘛

本指南适用于那些已经拥有开发Android应用基础知识的开发人员,现在想了解能够开发出更加健壮、优质的应用程序架构。首先需要说明的是:AndroidArchitectureComponents翻...

高德地图经纬度坐标批量拾取(高德地图批量查询经纬度)

使用方法在桌面上新建一个index.txt文件,把下面的代码复制进去保存,再把文件名改成index.html保存,双击运行打开即可...

flutter系列之:UI layout简介(flutter ui设计)

简介对于一个前端框架来说,除了各个组件之外,最重要的就是将这些组件进行连接的布局了。布局的英文名叫做layout,就是用来描述如何将组件进行摆放的一个约束。...

Android开发基础入门(一):UI与基础控件

Android基础入门前言:...

iOS的布局体系-流式布局MyFlowLayout

iOS布局体系的概览在我的CSDN博客中的几篇文章分别介绍MyLayout布局体系中的视图从一个方向依次排列的线性布局(MyLinearLayout)、视图层叠且停靠于父布局视图某个位置的框架布局(M...

TDesign企业级开源设计系统越发成熟稳定,支持 Vue3 / 小程序

TDesing发展越来越好了,出了好几套组件库,很成熟稳定了,新项目完全可以考虑使用。...

WinForm实现窗体自适应缩放(winform窗口缩放)

众所周知,...

winform项目——仿QQ即时通讯程序03:搭建登录界面

上两篇文章已经对CIM仿QQ即时通讯项目进行了需求分析和数据库设计。winform项目——仿QQ即时通讯程序01:原理及项目分析...

App自动化测试|原生app元素定位方法

元素定位方法介绍及应用Appium方法定位原生app元素...

61.C# TableLayoutPanel控件(c# tabcontrol)

摘要TableLayoutPanel在网格中排列内容,提供类似于HTML元素的功能。TableLayoutPanel控件允许你将控件放在网格布局中,而无需精确指定每个控件的位置。其单元格...

想要深入学习Android性能优化?看完这篇直接让你一步到位

...

12个python数据处理常用内置函数(python 的内置函数)

在python数据分析中,经常需要对字符串进行各种处理,例如拼接字符串、检索字符串等。下面我将对python中常用的内置字符串操作函数进行介绍。1.计算字符串的长度-len()函数str1='我爱py...

如何用Python程序将几十个PDF文件合并成一个PDF?其实只要这四步

假定你有一个很无聊的任务,需要将几十个PDF文件合并成一个PDF文件。每一个文件都有一个封面作为第一页,但你不希望合并后的文件中重复出现这些封面。即使有许多免费的程序可以合并PDF,很多也只是简单的将...

Python入门知识点总结,Python三大数据类型、数据结构、控制流

Python基础的重要性不言而喻,是每一个入门Python学习者所必备的知识点,作为Python入门,这部分知识点显得很庞杂,内容分支很多,大部分同学在刚刚学习时一头雾水。...