kubeasz/docs/setup/docker_kubeasz.md

58 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 容器化运行 kubeasz
## easzup 工具介绍
初始化工具 tools/easzup 主要用于:
- 下载 kubeasz 项目代码/k8s 二进制文件/其他所需二进制文件/离线docker镜像等
- 【可选】容器化运行 kubeasz
详见脚本内容,使用命令`./easzup` 查看帮助信息
### 容器化运行 kubeasz
kubeasz 容器启动脚本详见文件 tools/easzup 中函数`start_kubeasz_docker`
``` bash
docker run --detach \
--name kubeasz \
--restart always \
--env HOST_IP="$host_ip" \
--volume /etc/ansible:/etc/ansible \
--volume /root/.kube:/root/.kube \
--volume /root/.ssh/id_rsa:/root/.ssh/id_rsa:ro \
--volume /root/.ssh/id_rsa.pub:/root/.ssh/id_rsa.pub:ro \
--volume /root/.ssh/known_hosts:/root/.ssh/known_hosts:ro \
easzlab/kubeasz:${KUBEASZ_VER}
```
- --env HOST_IP="$host_ip" 传递这个参数是为了快速在本机安装aio集群
- --volume /etc/ansible:/etc/ansible 挂载本地目录,这样可以在宿主机上修改集群配置,然后在容器内执行 ansible 安装
- --volume /root/.kube:/root/.kube 容器内与主机共享 kubeconfig这样都可以执行 kubectl 命令
- --volume /root/.ssh/id_rsa:/root/.ssh/id_rsa:ro 等三个 volume 挂载保证:如果宿主机配置了免密码登录所有集群节点,那么容器内也可以免密码登录所有节点
## 容器化安装集群
项目[快速指南](quickStart.md),就是利用 kubeasz 容器快速安装单节点k8s集群的例子。
## 验证
使用容器化安装成功后,可以在 **容器内** 或者 **宿主机** 上执行 kubectl 命令验证集群状态。
## 清理
登录管理节点,按照如下步骤清理(清理后可以重新安装测试)
- 清理集群 `docker exec -it kubeasz easzctl destroy`
- 清理运行的容器 `./easzup -C`
- 清理容器镜像 `docker system prune -a`
- 停止docker服务 `systemctl stop docker`
- 删除docker文件
```
umount /var/run/docker/netns/default
umount /var/lib/docker/overlay
rm -rf /var/lib/docker /var/run/docker
```
上述清理脚本执行成功后,建议重启节点,以确保清理残留的虚拟网卡、路由等信息。