码迷,mamicode.com
首页 > 其他好文 > 详细

k8s摸索之kubeadm快速部署

时间:2020-07-24 22:13:30      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:独立   github   net   fir   截图   control   linu   Kubernete   mamicode   

一、虚拟机配置

1、在WMware里装上3台虚拟机,CentOS7最小化系统,配置好独立IP,截图如下:

技术图片技术图片

 

 

 

技术图片

 

 2、修改虚拟机网卡配置,然后启动网卡,再查看ip已经固定

#vi /etc/sysconfig/network-scripts/ifcfg-ens33

BOOTPROTO=static
ONBOOT=yes
NM_CONTROLLED=yes
IPADDR=192.168.126.100
NETMASK=255.255.255.0
GATEWAY=192.168.126.2
DNS1=114.114.114.119
DNS2=114.114.115.119

#启动网卡
ifup ens33
#关闭网卡
ifdown ens33

技术图片

 

 

 二、集群部署

以下均需在所以节点上配置

1、关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

2、关闭selinux

sed -i s/enforcing/disabled/ /etc/selinux/config 
setenforce 0

3、关闭swap

swapoff -a # 临时关闭
sed -ri s/.*swap.*/#&/ /etc/fstab  #永久关闭

4、修改主机名字和配置hosts

#修改主机名字
hostnamectl set-hostname 名字

#vi /etc/hosts

192.168.126.100 k8s-master
192.168.126.101 k8s-node1
192.168.126.102 k8s-node2

5、将桥接的IPv4流量传递到iptables的链

cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

sysctl --system

6、安装docker,https://docs.docker.com/engine/install/centos/

7、安装kubeadm,kubelet和kubectl

yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0

systemctl enable kubelet #设置开机自启

8、部署master,在master上操作,首先查看kubeadm初始化需要的镜像版本,由于访问不了谷歌的镜像需要改会国内的

# 查看镜像版本
kubeadm config images list

技术图片

方法1:此时可以一个一个下载需要的镜像,再用docker tag命令改成对应的名称,或者用下面shell脚本:

#!/bin/bash

set -e

KUBE_VERSION=v1.18.6
KUBE_PAUSE_VERSION=3.2
ETCD_VERSION=3.4.3-0
CORE_DNS_VERSION=1.6.7

GCR_URL=k8s.gcr.io
ALIYUN_URL=registry.cn-hangzhou.aliyuncs.com/google_containers

images=(kube-proxy:${KUBE_VERSION}
kube-scheduler:${KUBE_VERSION}
kube-controller-manager:${KUBE_VERSION}
kube-apiserver:${KUBE_VERSION}
pause:${KUBE_PAUSE_VERSION}
etcd:${ETCD_VERSION}
coredns:${CORE_DNS_VERSION})

for imageName in ${images[@]} ; do
  docker pull $ALIYUN_URL/$imageName
  docker tag  $ALIYUN_URL/$imageName $GCR_URL/$imageName
  docker rmi $ALIYUN_URL/$imageName
done

然后发现阿里云镜像没有那么高版本镜像,干脆把kubelet、kubectl、kubeadm降低版本

yum remove kubelet kubeadm kubectl
yum install -y kubelet-1.15.0 kubeadm-1.15.0 kubectl-1.15.0

再从8开始

方法2:初始化的时候改镜像源

9、初始化

kubeadm init --apiserver-advertise-address=192.168.126.100 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.15.0 --service-cidr=10.1.0.0/16 --pod-network-cidr=10.244.0.0/16

技术图片

 

 

 10、配置kubectl,直接按照第一个框内的内容来,为了使用便捷,启用 kubectl 命令的自动补全功能

echo "source <(kubectl completion bash)" >> ~/.bashrc

11、安装pod网络插件,可按中文文档来

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

12、加入node就按第二个红框的内容

 

k8s摸索之kubeadm快速部署

标签:独立   github   net   fir   截图   control   linu   Kubernete   mamicode   

原文地址:https://www.cnblogs.com/zhylioooo/p/13373803.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!