测试环境kubernetes的有点臃肿,k3是不错的选择(主要是由于没有公网,生产环境建议是用kubernetes)
k3默认使用的网络是fannel,如果需要其他网络公司的请自行搜索相关文档
部署环境:
系统:ubuntu 16.04
组件:docker-ce18.06(请提前安装,如果不是码头工人的,k3会提供containerd的方式,只是操作没码头工人方便,这里以码头工人为示例)
一、下载离线包(放在同一目录)
1。所有的集装箱图片
https://github.com/rancher/k3s/releases/download/v1.17.0%2Bk3s.1/k3s-airgap-images-amd64.tar
2。主要的二进制文件k3 https://github.com/rancher/k3s/releases/download/v1.17.0%2Bk3s.1/k3s
3。下载官方提供的install.sh https://github.com/rancher/k3s/blob/master/install.sh
二、部署
1。部署大师
主要添加跳过镜像下载的参数:
出口INSTALL_K3S_SKIP_DOWNLOAD=true
服务端脚本:
<代码> #/bin/bash 设置- e sudo cp k3/usr/local/bin/#使用码头工人 sudo码头工人加载& lt;k3s-airgap-images-amd64.tar.gz 如果[$(猫安装。上海| grep“出口INSTALL_K3S_SKIP_DOWNLOAD=true”| wc - l)情商0]; sudo sed - 3 i install.sh“出口INSTALL_K3S_SKIP_DOWNLOAD=true” fi sudo bash install.sh #使用码头工人 如果[$(猫/etc/systemd/system/k3s.服务| grep服务器| grep码头工人| wc - l)情商0]; sudo sed -我的服务器?服务器,码头工人?g’/etc/systemd/system/k3s.service fi sudo systemctl daemon-reload sudo systemctl重启k3 bash创建客户端。上海码头工人代码>
2。生成代理脚本,添加标记到服务的文件中
模板脚本client-tmp-docker.sh:
<代码> # !/bin/bash 设置- e cp - f k3/usr/local/bin/K3S_TOKEN=" TOKENK3S-SERVER " 猫在k3s-agent.service<& lt; EOF (单位) 描述=轻量级Kubernetes 文档=https://k3s.io 希望=network-online.target (安装) WantedBy=multi-user.target (服务) 类型=通知 EnvironmentFile=/etc/systemd/系统/k3s.service.env KillMode=过程 委托=yes LimitNOFILE=无穷大 LimitNPROC=无穷大 LimitCORE=无穷大 TasksMax=无穷大 TimeoutStartSec=0 重启=总 RestartSec=5 s ExecStartPre=-/sbin/modprobe br_netfilter ExecStartPre=-/sbin/modprobe覆盖 ExecStart=/usr/地方/bin/k3 \ 代理-服务器https://SEVERKESIP: 6443——令牌" $ {K3S_TOKEN} "——码头工人\ EOF sudo bash安装。上海代理 如果[!- f/etc/systemd/system/k3s.service。env],然后 触摸/etc/systemd/system/k3s.service.env fi sudo码头工人加载& lt;k3s-airgap-images-amd64.tar.gz sudo cp - f k3s-agent。服务/etc/systemd/system/sudo systemctl daemon-reload sudo systemctl重启k3s-agent.service sudo systemctl启用k3s-agent.service 代码>
生成client.sh的脚本create-client.sh
<代码> # !/bin/bash 设置- e K3S_TOKEN=$ (sudo猫/var/lib/rancher/k3s/server/node-token) 如果(" $ 1 " !="码头工人"); 猫client-tmp-containerd祝辞client-k3s.sh sed -我吗? TOKENK3S-SERVER K3S_TOKEN美元?g”client-k3s.sh sed - s SEVERKESIP ?美元(主机名- i) ?g”client-k3s.sh 其他的 猫client-tmp-docker祝辞client-k3s.sh sed -我吗? TOKENK3S-SERVER K3S_TOKEN美元?g”client-k3s.sh sed - s SEVERKESIP ?美元(主机名- i) ?g”client-k3s.sh fi 代码>
3。部署代理人
复制client.sh, k3, k3s-airgap-images-amd64.tar, install.sh到需要部署代理人的主机上,一定要放在同一目录下
执行cd/路径,,bash client.sh
完成后验证:
如果需要更多个性话的,请参考https://rancher.com/docs/k3s/latest/en/