1、 安装Docker
下载rpm安装包
docker-ce
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-18.09.2-3.el7.x86_64.rpm
docker-ce-cli
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-18.09.2-3.el7.x86_64.rpm
containerd.io
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.2-3.3.el7.x86_64.rpm
安装rpm包(严格安装顺序执行)
yum install docker-ce-cli-18.09.2-3.el7.x86_64.rpm
yum install containerd.io-1.2.2-3.3.el7.x86_64.rpm
yum install docker-ce-18.09.2-3.el7.x86_64.rpm
GPU节点需要安装NVDIA相关插件,详见:https://github.com/NVIDIA/nvidia-container-runtime
安装完毕后,需要修改daemon.json,示例如下:
{
"max-concurrent-downloads": 32,
"storage-driver": "overlay2",
"live-restore": true,
"bridge": "none",
"iptables": false,
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "5"
},
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
}
}
如要手动下载rmp包,需下载如下内容:libnvidia-container1.rpm,libnvidia-container-tools.rpm,nvidia-container-runtime.rpm,nvidia-container-toolkit.rpm¡
2、从UK8S Node拷贝配置文件及安装包到目标云主机或物理机
scp -r /etc/kubernetes/ root@uhost-ip:/etc/
# kubelet及kube-proxy配置文件
scp -r /usr/local/bin/ root@uhost-ip:/usr/local/
# kubelet&kube-proxy&kubectl二进制包
scp /usr/lib/systemd/system/kubelet.service root@uhost-ip:/usr/lib/systemd/system/kubelet.service
# 复制kubelet.service
scp /usr/lib/systemd/system/kube-proxy.service root@uhost-ip:/usr/lib/systemd/system/kube-proxy.service
# 复制kube-proxy.service
3、从UK8S Node拷贝CNI二进制包及配置文件到目标云主机或物理机
scp -r /opt/cni/bin/ root@uhost-ip:/opt/cni/
# 需要先在目标云主机创建对应目录,二进制包
scp -r /opt/cni/net.d/ root@uhost-ip:/opt/cni/
# 同上,配置文件
4、安装必备组件,关闭swap
yum install socat conntrack ipset
swapoff -a
5、修改kubelet及kube-proxy配置文件
配置文件都在/etc/kubernetes目录下
vi kube-proxy.conf kube-proxy
# 修改hostnameOverride
vi kubelet
# 修改--node-ip、--hostname-override、uhost-id、region等
vi ucloud
# 修改region、vpc、subnetwork等信息
6、安装kubelet及kube-proxy
mkdir -p /data/kubelet
ln -s /data/kubelet /var/lib/
systemctl start kubelet
systemctl start kube-proxy