AutoK3s
什么是 AutoK3s
K3s 是经过完全认证的 Kubernetes 产品,在某些情况下可以替代完整的 K8s。
AutoK3s 是用于简化 K3s 集群管理的轻量级工具,您可以使用 AutoK3s 在任何地方运行 K3s 服务。
关键特性
通过 API、CLI 和 UI 等方式快速创建 K3s。
云提供商集成(简化 CCM 设置)。
灵活安装选项,例如 K3s 集群 HA 和数据存储(内置 etcd、RDS、SQLite 等)。
低成本(尝试云中的竞价实例)。
通过 UI 简化操作。
多云之间弹性迁移,借助诸如 backup-restore-operator 这样的工具进行弹性迁移。
K3s离线安装,K3s离线安装包管理以及使用离线安装方式部署集群。
SSH Key管理,管理连接服务器的 SSH Key,用于部署 K3s 集群使用。
云提供商
AutoK3s 可以支持以下云厂商,我们会根据社区反馈添加更多支持:
XML/HTML代码
- 阿里云 - 在阿里云的 ECS 中初始化 K3s 集群
- AWS - 在亚马逊 EC2 中初始化 K3s 集群
- Google - 在Google GCE 中初始化 K3s 集群
- 腾讯云 - 在腾讯云 CVM 中初始化 K3s 集群
- Native - 在任意类型 VM 实例中初始化 K3s 集群
- K3d - 使用 K3d 在宿主机 Docker 中初始化 K3s 集群
快速体验
您可以通过以下 Docker 命令,一键启动 AutoK3s 本地 UI,快速体验相关功能。
XML/HTML代码
- docker run -itd --restart=unless-stopped -p 8080:8080 cnrancher/autok3s:v0.8.0
XML/HTML代码
- docker run -itd --restart=unless-stopped --net host -v /var/run/docker.sock:/var/run/docker.sock cnrancher/autok3s:v0.8.0
XML/HTML代码
- curl -sS https://rancher-mirror.rancher.cn/autok3s/install.sh | INSTALL_AUTOK3S_MIRROR=cn sh
您可以通过以下 CLI 命令启动服务,启动成功后会直接弹出默认浏览器,显示 AutoK3s 提供的本地 UI。
XML/HTML代码
- autok3s serve
XML/HTML代码
- export AWS_ACCESS_KEY_ID='<Your access key ID>'
- export AWS_SECRET_ACCESS_KEY='<Your secret access key>'
- autok3s -d create -p aws --name myk3s --master 1 --worker 1
XML/HTML代码
- /usr/local/bin/autok3s-uninstall.sh
个人快速体验:
以最简单最轻量的系统Alpine为例:
1、安装docker
添加community源,修改 /etc/apk/repositories 文件。
XML/HTML代码
- https://mirrors.ustc.edu.cn/alpine/latest-stable/main
- https://mirrors.ustc.edu.cn/alpine/latest-stable/community
XML/HTML代码
- #更新软件源
- apk update
- #安装docker以及相关组件
- apk add docker docker-compose docker-cli-compose
- #把 docker 添加到开机自启
- rc-update add docker boot
- #启动 docker 服务
- service docker start
- #查看程序是否安装成功
- docker version
Docker中体验K3s
XML/HTML代码
- docker run -itd --restart=unless-stopped -p 8080:8080 cnrancher/autok3s:v0.8.0
XML/HTML代码
- docker run -itd --restart=unless-stopped --net host -v /var/run/docker.sock:/var/run/docker.sock cnrancher/autok3s:v0.8.0
使用autok3s 创建k3s集群
容器启动完成以后访问服务器 ip:8080 然后点击Core/Clusters, 选择Native 创建一个集群。安装的基本参数设置 设置master节点ip 设置node节点ip 2台服务器密码需要一致,等待k3s安装部署完成 需要一段时间。
以上均为web操作,如果使用物理机安装,需要用命令创建(以下未测试,路径ip节点需要自行修改)
XML/HTML代码
- autok3s create --provider native --docker-script https://get.docker.com --k3s-channel stable --k3s-install-mirror INSTALL_K3S_MIRROR=cn --k3s-install-script https://rancher-mirror.oss-cn-beijing.aliyuncs.com/k3s/k3s-install.sh --name iotk3s --ssh-password xxxxxxxx --ssh-port 22 --ssh-user root --master-ips 10.1.0.15 --worker-ips 10.1.0.10 --registry /home/ubuntu/registry-config
端口和内网ip根据自己需要修改
XML/HTML代码
- docker run -d \
- --restart=unless-stopped \
- --name=kuboard \
- -p 8088:80/tcp \
- -p 10081:10081/tcp \
- -e KUBOARD_ENDPOINT="http://192.168.1.100:8088" \
- -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
- -v /root/kuboard-data:/data \
- eipwork/kuboard:v3
XML/HTML代码
- # 也可以使用镜像 swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard:v3 ,可以更快地完成镜像下载。
- # 请不要使用 127.0.0.1 或者 localhost 作为内网 IP
- # Kuboard 不需要和 K8S 在同一个网段,Kuboard Agent 甚至可以通过代理访问 Kuboard Server
在浏览器输入 http://your-host-ip:8088 即可访问 Kuboard v3.x 的界面,登录方式:
用户名:admin
密 码:Kuboard123
登录成功进入Kuboard 界面,点击Kubernetes的添加集群,找到master节点下的k3s配置,路径 /etc/rancher/k3s/k3s.yaml,最简单的就是通过Autok3s 的界面上的Download kubeconfig, 修改内部的server ip为master节点的ip, 将其复制到 KubeConfig 里面, 填写名称和描述, 然后点击确定, 点击确认以后进入这个界面 然后选择kuboard-admin 再点击集群概要,就导入了集群。