kubernetes部署集群

  • 搭建环境要求:
  1. CPU:2C或更多
  2. 内存:2G以上
  3. DISK:50G
  4. 禁止swap分区
  5. 时间一定要同步一致
  • 基础安装配置:
  • 修改主机名

#hostnamectl set-hostname k8s-master

  • 关闭防火墙

#systemctl stop firewalld

#systemctl disable firewalld

#sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

  • 关闭交换分区

 #swapoff -a && sysctl -w vm.swappiness=0

  • 配置hosts文件

#cat <<EOF > /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.2.141 k8s-master

192.168.2.141 k8s-node1

EOF

  • 优化内核参数

 #cat > /etc/sysctl.d/k8s.conf << EOF

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

EOF

#sysctl --system

  • 部署安装
  • 安装docker

#curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

#systemctl enable docker && systemctl start docker

  • 国内镜像加速

#cat > /etc/docker/daemon.json <<EOF

{

 "registry-mirrors": ["https://6ze43vnb.mirror.aliyuncs.com"],

 "exec-opts": ["native.cgroupdriver=systemd"],

 "log-driver": "json-file",

 "log-opts": {

   "max-size": "100m"

 },

 "storage-driver": "overlay2"

}

EOF

完成保存后执行重启Docker命令,如下:

# systemctl restart docker

查看docker版本

#docker --version

  • 建k8s镜像源

#cat >>/etc/yum.repos.d/kubernetes.repo <<EOF

[kubernetes]

name=Kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/

enabled=1

gpgcheck=1

repo_gpgcheck=1

gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

  • 安装K8S组件

#yum install -y kubelet kubectl kubeadm kubernetes-cni

查询软件版本

yum list --showduplicates xxxx--disableexcludes=kubernetes

kubectl/kubeadm/kubernetes-cni

#systemctl enable kubelet

  • 部署k8s

K8s初始化

#kubeadm init --image-repository registry.aliyuncs.com/google_containers --apiserver-advertise-address 192.168.2.141 --ignore-preflight-errors=Swap --pod-network-cidr=10.244.0.0/16

相关参数说明:

 ----image-repository  # 指定安装镜像源

 ----kubernetes-version=vxxxxx  # 指定安装k8s版本,如果不指定默认使用最新版本

 ----apiserver-advertise-address 192.168.2.141 #这里是apiserver的地址,也就master主机IP地址

 ----pod-network-cidr=10.244.0.0/16# 这个是后期创建pod时候使用IP地址段

初始化过程取决于网络速度,稍等片刻。。。。

  • 配置kubectl

#mkdir -p $HOME/.kube

#cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

#chown $(id -u):$(id -g) $HOME/.kube/config

查看kubectl状态

# kubectl get nodes

kubectl命令自动补全

#yum install bash-completion

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


可以看到 status 为 NotReady, 因为网络组件还没有配置, 下面配置 flannel。

# kubectl get pods --all-namespaces

  • 安装Pod网络插件(CNI)

#wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

kubectl apply -f kube-flannel.yml

再次查看

# kubectl get pods --all-namespaces

#kubectl get nodes

# kubectl get cs

Master节点安装完成

  • Tips
  • 如果忘记集群加入,可以重新生成
  • kubeadm token create --print-join-command

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值