ubuntu16.04中k8s部署(双节点)

1.虚拟机准备
环境:ubuntu 16.04
宿主机作为 master节点,虚拟机作为node节点
这两个 ip分别为
192.168.70.144 做master节点
192.168.70.146 做node节点

2.系统设置(master和node都要执行的)
先禁用swap

sudo swapoff -a

使用

free -m

命令查看一下,如果 Swap 都为0 则禁用成功

设置交换分区开机不启动

sudo vim /etc/fstab

在这里插入图片描述
关闭防火墙

 sudo ufw disable

禁用Selinux

sudo apt install selinux-utils
setenforce 0

在两个节点的 /etc/hosts配置中 分别 加入(ip自定义,注主机名是自己的主机名)这两个是 ip地址 和 虚拟主机名

sudo vim /etc/hosts

192.168.70.144 master
192.168.70.146 node

两个节点中都要安装Docker(这个自行安装)

启动docker服务

systemctl enable docker
systemctl start docker

使用阿里云 镜像加速,否则拉取对象的时候 会有问题

sudo vim  /etc/docker/daemon.json

添加内容:

{
    "registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"],
    "live-restore": true
}

3.安装kubectl,kubelet,kubeadm( master 和 node 节点都执行)
添加密钥

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -

添加Kubernetes软件源

sudo cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb http://mirrors.ustc.edu.cn/kubernetes/apt kubernetes-xenial main
EOF

安装:

sudo apt-get update && apt-get install -y kubelet kubeadm kubectl
systemctl enable kubelet

注:安装成功后不要执行systemctl start kubelet,执行是会报错的,直接向下执行就可以了

4.配置Master(只用在Master下执行)
(1)在master节点 /etc/profile 下面增加如下环境变量

export KUBECONFIG=/etc/kubernetes/admin.conf
#重起kubelet
systemctl daemon-reload
systemctl restart kubelet

(2)在master节点上执行,查看所需的镜像的版本

 kubeadm  config images list 

k8s.gcr.io/kube-apiserver:v1.17.3
k8s.gcr.io/kube-controller-manager:v1.17.3
k8s.gcr.io/kube-scheduler:v1.17.3
k8s.gcr.io/kube-proxy:v1.17.3
k8s.gcr.io/pause:3.1
k8s.gcr.io/etcd:3.4.3-0
k8s.gcr.io/coredns:1.6.5

列出的就是 所缺的镜像,这里我们使用阿里云的镜像仓库 拉取镜像(以下可以用我准备的脚本image.sh导入)

sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.17.3
sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.17.3
sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.17.3
sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.17.3
sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.1
sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.4.3-0
sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.6.5

拉取完成后,把这些镜像进行tag一下

sudo docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.17.3 k8s.gcr.io/kube-apiserver:v1.17.3
sudo docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.17.3 k8s.gcr.io/kube-controller-manager:v1.17.3
sudo docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.17.3 k8s.gcr.io/kube-scheduler:v1.17.3
sudo docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.17.3 k8s.gcr.io/kube-proxy:v1.17.3
sudo docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.1 k8s.gcr.io/pause:3.1
sudo docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.4.3-0 k8s.gcr.io/etcd:3.4.3-0
sudo docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:1.6.5 k8s.gcr.io/coredns:1.6.5

接着执行,

kubeadm init --kubernetes-version=v1.17.3 --pod-network-cidr 10.244.0.0/16

输出结果为:

在这里插入图片描述此时表示初始化成功
但此时集群还不可以使用,上图红框是需要执行的操作 执行完以后才能使用集群
(1)执行

mkdir -p $HOME/.kube
  sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  sudo chown $(id -u):$(id -g) $HOME/.kube/config

(2)接下来配置网络插件flannel

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

或者用以下也能添加,或者用我的flannel.yaml也可以添加

sudo docker pull quay-mirror.qiniu.com/coreos/flannel:v0.12.0-amd64
sudo docker tag quay-mirror.qiniu.com/coreos/flannel:v0.12.0-amd64 quay.io/coreos/flannel:v0.12.0-amd64

(3)查看pod

kubectl get pods --all-namespaces

STATUS列应都为Running

在 Master 使用命令

kubectl get nodes

STATUS为Ready

此时master节点 已经搭建成功!!

5.将node节点加入到集群中
在这里插入图片描述在虚拟机里加入这句,即可加入node节点,在master 节点再次运行kubectl get nodes可以看到两个节点都为Ready(不要忘了node节点也需要sudo swapoff -a)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值