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

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

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

一、概述

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

相关推荐

Linux高性能服务器设计

C10K和C10M计算机领域的很多技术都是需求推动的,上世纪90年代,由于互联网的飞速发展,网络服务器无法支撑快速增长的用户规模。1999年,DanKegel提出了著名的C10问题:一台服务器上同时...

独立游戏开发者常犯的十大错误

...

学C了一头雾水该咋办?

学C了一头雾水该怎么办?最简单的方法就是你再学一遍呗。俗话说熟能生巧,铁杵也能磨成针。但是一味的为学而学,这个好像没什么卵用。为什么学了还是一头雾水,重点就在这,找出为什么会这个样子?1、概念理解不深...

C++基础语法梳理:inline 内联函数!虚函数可以是内联函数吗?

上节我们分析了C++基础语法的const,static以及this指针,那么这节内容我们来看一下inline内联函数吧!inline内联函数...

C语言实战小游戏:井字棋(三子棋)大战!文内含有源码

井字棋是黑白棋的一种。井字棋是一种民间传统游戏,又叫九宫棋、圈圈叉叉、一条龙、三子旗等。将正方形对角线连起来,相对两边依次摆上三个双方棋子,只要将自己的三个棋子走成一条线,对方就算输了。但是,有很多时...

C++语言到底是不是C语言的超集之一

C与C++两个关系亲密的编程语言,它们本质上是两中语言,只是C++语言设计时要求尽可能的兼容C语言特性,因此C语言中99%以上的功能都可以使用C++完成。本文探讨那些存在于C语言中的特性,但是在C++...

在C++中,如何避免出现Bug?

C++中的主要问题之一是存在大量行为未定义或对程序员来说意外的构造。我们在使用静态分析器检查各种项目时经常会遇到这些问题。但正如我们所知,最佳做法是在编译阶段尽早检测错误。让我们来看看现代C++中的一...

ESL-通过事件控制FreeSWITCH

通过事件提供的最底层控制机制,允许我们有效地利用工具箱,适时选择使用其中的单个工具。FreeSWITCH是一个核心交换与混合矩阵,它周围有几十个模块提供各种功能特性。我们完全控制了所有的即时信息,这些...

物理老师教你学C++语言(中篇)

一、条件语句与实验判断...

C语言入门指南

当然!以下是关于C语言入门编程的基础介绍和入门建议,希望能帮你顺利起步:C语言入门指南...

C++选择结构,让程序自动进行决策

什么是选择结构?正常的程序都是从上至下顺序执行,这就是顺序结构...

C++特性使用建议

1.引用参数使用引用替代指针且所有不变的引用参数必须加上const。在C语言中,如果函数需要修改变量的值,参数必须为指针,如...

C++程序员学习Zig指南(中篇)

1.复合数据类型结构体与方法的对比C++类:...

研一自学C++啃得动吗?

研一自学C++啃得动吗?在开始前我有一些资料,是我根据网友给的问题精心整理了一份「C++的资料从专业入门到高级教程」,点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!个人...

C++关键字介绍

下表列出了C++中的常用关键字,这些关键字不能作为变量名或其他标识符名称。1、autoC++11的auto用于表示变量的自动类型推断。即在声明变量的时候,根据变量初始值的类型自动为此变量选择匹配的...