wsl2安装rancher并导入和创建k8s集群

环境准备

  1. 安装wsl2点击此文]
  2. ubuntu20.04安装docker 点击此文,安装完成后docker镜像仓库改成阿里云镜像加速地址.如果不熟请点击此文

docker 安装rancher

启动wsl,根据官方文档以root身份执行

  sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged rancher/rancher

然后是漫长等待,docker需要拉取1-2G的镜像,等待容器启动后,访问
http://wslIP地址/ 等待时间过长,无法访问。执行

docker logs -f 容器ID

查看日志:

etcdserver: read-only range request "key:\"/registry/configmaps\" range_end:\"/registry/configmapt\" count_only:true " with result "range_response_count:0 size:7" took too long (117.801502ms) to execute
搜索rancher的issue列表,突然看到一个关于固态硬盘和机械硬盘的回答。于是把原来在c盘的wsl迁移到了d盘,然后在迁移回c盘,我的C盘是ssd固态,其他为机械盘。因为etcd对硬盘io性能比较敏感。迁移方法参考此文

windows terminal 执行 wsl -d Ubuntu 进入ubuntu 20.04,启动rancher容器,访问 http://wslIP地址/
可以看到小清新界面:

image.png

我已经更改了密码,第一次使用会有重设密码的步骤。至此rancher安装成功

创建一台vmware 虚拟机安装k3s

注意vmware的虚机最好也装在ssd上!!!
一般来说最新版本安装步骤看官方中文文档,,这个步骤我重装了4次,无语了。后面采用离线安装方式。 安装前特别注意选择k3s的安装版本。查看步骤:

  1. 首先查看rancher的版本,登录rancher,点击左边的三横,调出左边菜单栏,最下边,中间会显示rancher版本号,如图。

image.png

然后在主页下面也会显示k3s的当前版本号。因为rancher本身其实是安装在k3s上的。查看一下k3s的版本,我的如图:

image.png

看了后有点吃惊,因为安装时候rancher最新release是v2.8.3,而docker拉取的latest镜像却是2.6.3! 估计是阿里云镜像更新没有很及时,有大佬知道请指教一下。
安装k3s前看一下rancher和k3s的版本对应关系,点击[官方matrix] (https://www.suse.com/suse-rancher/support-matrix/all-supported-versions/rancher-v2-6-3/) v2.8.3明确列出了支持可导入的k3s版本,而v2.6.3并没有。但是它列出了local cluster的有效版本。我就重新离线安装了它支持的最高版本:v1.21.7+k3s1。如果版本不对应rancher中导入的集群会一直pending。

vmware虚拟机离线安装k3s v1.21.7+k3s1版本

根据此文采用 Containerd + 手动部署镜像方式的方式安装成功了k3s 这样可以避免再安装docker.
虚机shell执行:

  systemctl status k3s

确定服务在running

rancher导入外部k8s集群

然后回到rancher,在主页面或者集群管理界面点击导入k8s集群导入k3s,具体步骤点击此文
集群状态顺利变成了active。

image.png
点击后面的"explore"可以查看集群信息。

rancher 创建集群

卸载vmware 虚拟机上的k3s,按照此文 的创建集群部分,在vm上创建了新集群。如图:

image.png

至此任务完成,enjoy!

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-05-10 07:22:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-10 07:22:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-10 07:22:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-10 07:22:03       20 阅读

热门阅读

  1. 伪类和伪元素的区别是什么?

    2024-05-10 07:22:03       9 阅读
  2. uniapp vue 获取天气数据

    2024-05-10 07:22:03       10 阅读
  3. 学习Uni-app开发小程序Day6

    2024-05-10 07:22:03       9 阅读
  4. 构建跨平台应用的利器——UniApp

    2024-05-10 07:22:03       11 阅读
  5. 基于STM32的云端灌溉系统毕业设计

    2024-05-10 07:22:03       9 阅读
  6. 第十一章数据仓库和商务智能

    2024-05-10 07:22:03       10 阅读
  7. Delphi 高效处理大数据量的字典数据的查询问题

    2024-05-10 07:22:03       10 阅读