使用k3s搭建一个k8s的学习环境

使用k3s搭建一个k8s的学习环境

k3s官网文档: https://docs.rancher.cn/docs/k3s/_index/

准备两台centos7的虚拟机,一台主机名为server,一台主机名为agent0, 使用ip addr 获得两台机器ip:

server 192.168.160.130

agent0 192.168.160.131

k3s默认的容器运行时是containerd, 而国内docker更为流行, 我对docker也更熟悉一些, 所以在k8s未来也将抛弃docker的情况下, 我还是想固执的使用docker. 谷歌大恶人,前年我学习docker的时候,不由得感叹docker:这才是真正酷的技术,当时docker也是未来无限光明的公司 但是没想到才过一两年,docker为了盈利切分为开源版(就是github的moby项目)和商业版, 在容器集群管理领域亲儿子docker swarm被k8s打败, 难道现在小鲸鱼也要被取代了吗¿¿¿

在server机器安装k3s-server

  1. 关闭防火墙: systemctl stop firewalld

    永久关闭防火墙: systemctl disable firewalld

  2. 安装docker: curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

    启动docker:systemctl start docker

    设置docker开机自启动: systemctl enable docker

  3. 安装k3s-server: curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -s - server --docker

安装后检查

  • 执行: kubectl get pod -o wide -n kube-system ,可以看到有3个系统组件是Running状态, 还有一个异常的可以先不管

  • 执行: kubectl get node -o wide, 可以看到当前集群中管理的节点只有server机器一个

在agent0机器安装k3s-agent

  1. 关闭防火墙: systemctl stop firewalld

    永久关闭防火墙: systemctl disable firewalld

  2. 安装docker:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

    启动docker:systemctl start docker

    设置docker开机自启动:systemctl enable docker

  3. 在server获取node-token: cat /var/lib/rancher/k3s/server/node-token

  4. 安装k3s-agent: curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn K3S_URL=https://${server_ip}:6443 K3S_TOKEN=${node_token} sh -s - --docker

    本例中为: curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn K3S_URL=https://192.168.160.130:6443 K3S_TOKEN=K10b6245830058464fd794939e912d96f821cf5c2a7aecb82ef98da65ecf6a4aee5::server:4027ee6e383a621246d69ac102b60cc7 sh -s - --docker

安装后检查

  • 在server机器执行:kubectl get node -o wide, 可以看到agent0机器已经被注册到集群中

    发现上面的agent0的ROLES字段为none, 可以执行kubectl label node ${node_name} node-role.kubernetes.io/worker=worker ,使节点作为工作节点,执行之后可以看到

  • 在server执行:kubectl get pod -o wide -n kube-system ,可以看到有两个pod被部署到agent0机器
    使用k3s搭建一个k8s的学习环境_第1张图片
    在agent0执行:docker ps

Q&A

  1. 如果安装docker失败, 还可以参考其他资料进行安装
    • CentOS Docker 安装: https://www.runoob.com/docker/centos-docker-install.html
    • docker官方安装: https://docs.docker.com/engine/install/centos/

你可能感兴趣的:(k8s,Docker,kubernetes,docker)