淘先锋技术网

首页 1 2 3 4 5 6 7

一,什么是 Rancher?

 官网地址:

什么是 Rancher? | Rancher Manager

Rancher 是一个 Kubernetes 管理工具,让你能在任何地方和任何提供商上部署和运行集群。

Rancher 可以创建来自 Kubernetes 托管服务提供商的集群,创建节点并安装 Kubernetes,或者导入在任何地方运行的现有 Kubernetes 集群。

Rancher 基于 Kubernetes 添加了新的功能,包括统一所有集群的身份验证和 RBAC,让系统管理员从一个位置控制全部集群的访问。

此外,Rancher 可以为集群和资源提供更精细的监控和告警,将日志发送到外部提供商,并通过应用商店(Application Catalog)直接集成 Helm。如果你拥有外部 CI/CD 系统,你可以将其与 Rancher 对接。没有的话,你也可以使用 Rancher 提供的 Fleet 自动部署和升级工作负载。

Rancher 是一个 全栈式 的 Kubernetes 容器管理平台,为你提供在任何地方都能成功运行 Kubernetes 的工具。

二,安装方式

常见的安装方式有以下几种,此次我们模拟生产环境中使用选择第一种

1,使用 Helm CLI 安装的高可用 Kubernetes

我们建议使用 Kubernetes 包管理器 Helm 在专用的 Kubernetes 集群上安装 Rancher。在 RKE 集群中,需要使用三个节点才能实现高可用集群。在 K3s 集群中,只需要两个节点即可。

2,单节点 Kubernetes 安装

Rancher 可以安装在单节点 Kubernetes 集群上。但是,在单节点安装的情况下,Rancher Server 没有高可用性。而高可用性对在生产环境中运行 Rancher 非常重要。

但是,如果你想要短期内使用单节点节省资源,同时又保留高可用性迁移路径,那么单节点 Kubernetes 安装也是合适的。你也可以之后向集群中添加节点,获得高可用的 Rancher Server。

3,Docker 安装

如果你的目的是测试或演示,你可以使用 Docker 把 Rancher 安装到单个节点中。本地 Kubernetes 集群是安装到单个 Docker 容器中的,而 Rancher 是安装到本地集群中的。

三,环境准备

1,k8s集群环境: 1.23.1

 2,安装ingress-nginx

GitHub地址:https://github.com/kubernetes/ingress-nginx/blob/main/deploy/static/provider/baremetal/deploy.yaml

执行kubectl apply -f deploy.yaml安装ingress-nginx

镜像无法下载可使用阿里云地址下载后tag更改标签,在此不多做叙述。

 四,使用Helm安装Rancher

1,添加 Helm Chart 仓库

helm repo add rancher-stable https://releases.rancher.com/server-charts/stable

2,为 Rancher 创建命名空间

kubectl create namespace cattle-system

3, SSL 配置

Rancher Management Server 默认需要 SSL/TLS 配置来保证访问的安全性。

使用cert-manager安装ssl证书授权

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.11.0/cert-manager.crds.yaml

# 添加 Jetstack Helm 仓库
helm repo add jetstack https://charts.jetstack.io

# 更新本地 Helm Chart 仓库缓存
helm repo update

# 安装 cert-manager Helm Chart
helm install cert-manager jetstack/cert-manager \
  --namespace cert-manager \
  --create-namespace \
  --version v1.11.0

kubectl get pods --namespace cert-manager

 4,通过 Helm 安装 Rancher

helm install rancher rancher-stable/rancher \
  --namespace cattle-system \
  --set hostname=rancher.my.org \
  --set bootstrapPassword=admin

其中hostname替换成您的域名,bootstrapPassword替换为自己想要的密码。

 等待 Rancher 运行:

出现 deployment "rancher" successfully rolled out 安装完成。

五,浏览器访问 Rancher

1,获取 Rancher 地址

echo https://自己填写的域名/dashboard/?setup=$(kubectl get secret --namespace cattle-system bootstrap-secret -o go-template='{{.data.bootstrapPassword|base64decode}}')

2,配置本地 hosts 文件

     添加IP地址和域名信息

3,浏览器访问 Rancher

 4,导入现有集群

根据提示导入需要被管理的k8s集群,本次就到此结束啦。

如有不明白的地方可留言,扩展使用可参考官网。