rancher中国镜像站地址

https://rancher-mirror.oss-cn-beijing.aliyuncs.com/

https://rancher-mirror.rancher.cn/k3s

rancher 路径和中文镜像的对应关系

参考文档

部署Rancher Manager

https://ranchermanager.docs.rancher.com/zh/getting-started/quick-start-guides/deploy-rancher-manager/helm-cli

在kubernetes 集群上安装/升级 Rancher

https://ranchermanager.docs.rancher.com/zh/pages-for-subheaders/install-upgrade-on-a-kubernetes-cluster

在Linux上安装K3s

1、优化镜像拉取

优化containerd的镜像仓库,参考k3s和containerd

2、使用命令部署k3s

curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_VERSION=v1.24.9+k3s2 sh -

保存kubeconfig 到你rancher机器上

1、mkdir -p /root/.kube

2、scp root@<IP_OF_LINUX_MACHINE>:/etc/rancher/k3s/k3s.yaml ~/.kube/config

cp /etc/rancher/k3s/k3s.yaml ~/.kube/config

在kubeconfig中编辑Rancher Server URL

你需要将 server 字段的值更改为 <IP_OF_LINUX_NODE>:6443。你可以通过端口 6443 访问 Kubernetes API Server,通过端口 80 和 443 访问 Rancher Server。你需要进行此编辑,以便你从本地工作站运行 Helm 或 kubectl 命令时,能够与安装了 Rancher 的 Kubernetes 集群进行通信。

vi ~/.kube/config

3、使用helm 来安装Rancher

helm版本:helm-v3.11.0-rc.2-linux-amd64.tar.gz

1、tar -zxvf helm-v3.11.0-rc.2-linux-amd64.tar.gz

2、mv linux-amd64/helm /usr/local/bin/helm

4、使用helm安装rancher

1、helm repo add rancher-latest https://releases.rancher.com/server-charts/latest 

2、kubectl create namespace cattle-system

 #从此路径下载cert-manager.crds.yaml

3、kubectl apply -f cert-manager.crds.yaml

4、helm repo add jetstack https://charts.jetstack.io 

5、helm repo update

6、安装自签证书

helm install cert-manager jetstack/cert-manager --namespace cert-manager --create-namespace --version v1.7.1

7、安装rancher

helm install rancher rancher-latest/rancher \     
--namespace cattle-system \
--set hostname=rancher.my.org \
--set replicas=1 \
--set bootstrapPassword=admin \
--dry-run

note:

1、安装特定的rancher版本: --set rancherImageTag=latest

8、效验rancher运行

kubectl -n cattle-system rollout status deploy/rancher

查看rancher 部署状态:

kubectl -n cattle-system get deploy rancher

编辑rancher 部署:

kubectl -n cattle-system edit deploy/rancher

9、请保存你使用的--set选项。使用Helm 升级Rancher 到新版本时,你将需要使用相同的选项。

故障处理

Rancher Server Kubernetes 集群的问题排查:

https://ranchermanager.docs.rancher.com/zh/getting-started/installation-and-upgrade/install-upgrade-on-a-kubernetes-cluster/troubleshooting

导入k3s集群到rancher 中失败原因:

一、集群添加不成功,一直处于pending状态

1、查看pod状态

kubectl get pods -A

2、查看cattle-cluster-agent容器日志

kubectl logs CONTAINER-NAME -n cattle-system

3、由于客户端配置了hosts,但集群节点不知道 rancher.my.org 对应的是哪个机器。

解决方案

1、在所有节点配置/etc/hosts,先让所有节点都能认识 rancher.my.org。

vim /etc/hosts

#IP rancher.my.org

2、为Agent Pod 添加主机别名(/etc/hosts)

 1 kubectl -n cattle-system patch deployments cattle-cluster-agent --patch '{
2 "spec": {
3 "template": {
4 "spec": {
5 "hostAliases": [
6 {
7 "hostnames":
8 [
9 "rancher.my.org"
10 ],
11 "ip": "192.168.56.101"
12 }
13 ]
14 }
15 }
16 }
17 }'

二、导入完成后,一直处于wait状态,dns问题

level=error msg="failed to call leader func: settings.management.cattle.io \"install-uuid\" not found"

level=error msg="failed to call leader func: settings.management.cattle.io \"install-uuid\" not found"

三、报错lockup

kernel:NMI watchdog: BUG: soft lockup - CPU#1 stuck for 29s! [containerd-shim:10281]

解决方案:

echo 30 > /proc/sys/kernel/watchdog_thresh

sysctl -w kernel.watchdog_thresh=30

四、镜像拉取不下来

k3s使用containerd做镜像管理工具,优化containerd的镜像仓库,参考k3s和containerd

优化选项

# 修该容器引擎,定义变量 INSTALL_K3S_EXEC

export INSTALL_K3S_EXEC="--docker --write-kubeconfig ~/.kube/config --write-kubeconfig-mode 666"

curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -

​命令参数解释:

INSTALL_K3S_EXEC="(略)"效果为启动k3s服务时使用的额外参数。

--docker :效果为使用docker而不是默认的containerd。

--write-kubeconfig-mode 666 :效果为将配置文件权限改为非所有者也可读可写,进而使kubectl命令无需root或sudo。

--write-kubeconfig ~/.kube/config :效果为将配置文件写到k8s默认会用的位置,而不是k3s默认的位置/etc/rancher/k3s/k3s.yaml。后者会导致istio、helm需要额外设置或无法运行。

k3s 常用命令

卸载k3s

/usr/local/bin/k3s-uninstall.sh

从agent节点卸载k3s

/usr/local/bin/k3s-agent-uninstall.sh

使用Rancher管理K3s的更多相关文章

  1. docker微服务部署之:六、Rancher管理部署微服务

    docker微服务部署之:五.利用DockerMaven插件自动构建镜像 一. 什么是Rancher Rancher是一个开源的企业级容器管理平台.通过Rancher,企业再也不必自己使用一系列的开源 ...

  2. 安装配置Rancher管理docker

    原文:安装配置Rancher管理docker 版权声明:本文为博主原创文章,转载请注明地址http://blog.csdn.net/tianyaleixiaowu. https://blog.csdn ...

  3. Rancher On K3s 高可用架构部署

    Rancher 推荐部署架构 k3s 模式 RKE 和 k8s 模式 备注: 我对 RKE 的理解就是 Ansible + kubeadm 的打包,首先 rke 需要到每一个节点都可以免密 ssh , ...

  4. 使用Rancher管理Docker

    使用命令: sudo docker run -it -d --restart=always -p : --name docker-rancher rancher/server 为了更快速的下载应用,推 ...

  5. 企业级rancher搭建Kubernetes(采用rancher管理平台搭建k8s)

    一.简介 Rancher简介 来源官方:https://www.cnrancher.com/ Rancher是一个开源的企业级容器管理平台.通过Rancher,企业再也不必自己使用一系列的开源软件去从 ...

  6. Docker_使用Rancher管理docker(7)

    一.简介 Rancher是一个开源的企业级全栈化容器部署及管理平台.Rancher为容器提供一揽子基础架构服务:CNI兼容的网络服务.存储服务.主机管理.负载均衡.防护墙--Rancher让上述服务跨 ...

  7. 最佳实践丨使用Rancher轻松管理上万资源不是梦!

    前 言 Rancher 作为一个开源的企业级 Kubernetes 集群管理平台.你可以导入现有集群,如 ACK.TKE.EKS.GKE,或者使用 RKE.RKE2.K3s 自定义部署集群. 作为业界 ...

  8. 强大多云混合多K8S集群管理平台Rancher入门实战

    @ 目录 概述 定义 为何使用 其他产品 安装 简述 规划 基础环境 Docker安装 Rancher安装 创建用户 创建集群 添加Node节点 配置kubectl 创建项目和名称空间 发布应用 偏好 ...

  9. 安装Rancher容器化管理平台

    卸载已有的避免冲突 yum remove docker  docker-common docker-selinux docker-engine   安装需要的软件包,yum-util 提供yum-co ...

  10. 华为鲲鹏服务器安装 k3s+rancher

    华为鲲鹏服务器安装 k3s+rancher 华为鲲鹏服务器 华为鲲鹏服务器采用华为自研cpu ARMv8架构,提供 Windows 和多个Linux 系统,作为服务器使用我一直使用Centos系统(不 ...

随机推荐

  1. Java多线程(5):CAS

    您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来- 在JDK1.5之前,Java的多线程都是靠synchronized来保证同步的,这会引起很多性能问题,例如死锁.但随着Java的不断完善,JNI ...

  2. Abp.Zero 手机号免密登录验证与号码绑定功能的实现(一):验证码模块

    这是一篇系列博文,我将使用Abp.Zero搭建一套集成手机号免密登录验证与号码绑定功能的用户系统: Abp.Zero 手机号免密登录验证与号码绑定功能的实现(一):验证码模块 Abp.Zero 手机号 ...

  3. ES6 学习笔记(十一)迭代器和生成器函数

    1.前言 JavaScript提供了许多的方法来获取数组或者对象中的某个元素或者属性(迭代).从以前的for循环到之后的filter.map再到后来的for...in和for...of的迭代机制.只要 ...

  4. MyBatis&Spring Framrwork

    1. MyBatis 1.1 概述 MyBatis是一款优秀的持久层框架,用于简化JDBC开发 MyBatis本是Apache的一个开源项目iBatis,2010年这个项目迁移到了google cod ...

  5. DNS 解析 prefeath

    本文将详细介绍DNS预解析prefetch的主要内容 概述 DNS(Domain Name System, 域名系统),是域名和IP地址相互映射的一个分布式数据库.DNS 查询就是将域名转换成 IP ...

  6. Graceful Java之try...catch()

    [优美的Java代码之try...catch] 目录 概述 优化 优化前写法(JDK1.7之前) 优化后写法(JDK1.7及以后) 延伸阅读:嵌套的文件流如何正确的关闭 概述 通常我们使用try... ...

  7. 第2-2-4章 常见组件与中台化-常用组件服务介绍-分布式ID-附Snowflake雪花算法的代码实现

    目录 2.3 分布式ID 2.3.1 功能概述 2.3.2 应用场景 2.3.3 使用说明 2.3.4 项目截图 2.3.5 Snowflake雪花算法的代码实现 2.3 分布式ID 2.3.1 功能 ...

  8. XTDrone和PX4学习期间问题记录(一)

    XTDrone和PX4学习期间问题记录(一) Written By PiscesAlpaca 前言: 出现问题可以去官方网站http://ceres-solver.org/index.html查看文档 ...

  9. Git+Github协作开发流程

    采用合作开发者的方式进行协作开发,下面以zlcook和zlserver合作开发iqas-ios-record项目为例进行讲解,zlcook为项目创建者,zlserver为项目参与者.协作开发步骤如下: ...

  10. Crond服务+Shell实现秒级任务

    服务 [root@19-v1-centos-6 ~]# chkconfig --list | grep crond crond 0:off 1:off 2:on 3:on 4:on 5:on 6:of ...