kubernetes集群安装

集群环境准备

在我们安装集群环境之前需要准备好。docker、配置好我们的linux机器,并确保每台机器最少有2g运行内存,并且确保每台机器都可以和其他机器网络连通

docker安装

开始之前,如果你是centos8,需要清除掉自带的podman。

sudo yum remove podman
  1. yum源相关配置
#安装yum工具
sudo yum install -y yum-utils \
device-mapper-persistent-data \
 lvm2
#配置镜像
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  1. 安装前置依赖
sudo yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
  1. 安装docker
sudo yum install docker-ce docker-ce-cli containerd.io
  1. 配置docker
sudo mkdir /etc/docker
sudo vim /etc/docker/daemon.json
将下面的配置加入到文件中
{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}

保存退出后运行以下命令,启动docker并将docker加到开机启动
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl enable docker

linux环境准备

  1. 修改hostname
#主节点
sudo hostnamectl set-hostname master.k8s
依次类推修改好你所有机器上的 hostname
  1. 配置hosts(域名解析)
sudo vim /etc/hosts
#安装fannel网络时需要用到
199.232.68.133  raw.githubusercontent.com
#注意请改成你自己机器的ip,不清楚ip多少使用ifconfig查看
10.211.55.4 master.k8s
10.211.55.5 worker1.k8s
10.211.55.6 worker2.k8s
  1. 关闭swap
#临时禁用
sudo swapoff -a
#永久禁用swap
sudo vim /etc/fstab
注释有swap的那一行后保存退出即可
  1. 关闭防火墙
sudo systemctl stop firewalld
sudo systemctl disable firewalld
  1. 配置iptables转发策略
sudo echo "1" > /proc/sys/net/ipv4/ip_forward 
sudo echo "1" >/proc/sys/net/bridge/bridge-nf-call-iptables

kubeadm kubectl kubelet 安装

  1. 配置yum源
sudo cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
  1. 安装
sudo yum install -y kubectl kubelet kubeadm
sudo systemctl enable kubelet
systemctl start kubelet

集群安装

在为每台机器准备好这些环境后,下面开始集群安装,这里使用最简单的kubeadm进行安装,具体细节以及描述,可以查看官方的教程:kubeadm安装集群,kubeadm指令介绍

  1. 主节点创建
kubeadm init --kubernetes-version=1.18.0  \
--apiserver-advertise-address=10.211.55.4   \
--image-repository registry.aliyuncs.com/google_containers  \
--service-cidr=10.96.0.0/16 --pod-network-cidr=10.224.0.0/16

这里我们需要注意一下,默认的镜像仓库因为科学上网缘故无法访问到,所以这里我们用阿里云的镜像来处理,另外还有pod-network-cidr这个是指定pod网域用的,不设置的话,安装好的集群将无法正常访问到。并且最好将打印出来日志保留一份,后续从节点将会通过kubeadm join来加入到集群中

  1. kubectl相关配置
sudo mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

特别注意:如果你想在从节点使用kubectl 需要将主节点的admin.conf也拷贝到从节点对应位置即可。

  1. 网络配置

这里我们用目前国内能访问的calico,这个后续深入研究了再单独开个博客讲讲。

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

如果头铁要用fannel的话现在网络上大部分的都是官网的指令,但是这个网址已经被墙了,需要单独配置域名解析和不科学上网才能下载,墙裂推荐各位用calico。

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

4.从节点join

kubeadm join 10.211.55.4:6443 --token 01mwcl.abw43u68tqt3n4mc     --discovery-token-ca-cert-hash sha256:549aa31d1dbbe87d883e63da5392f5faad7b783eb6aeb77adfbbd011dc9dfa4b

特别注意!!!!
这里请用你自己的主节点生成的join参数来将从加入集群。实在不记得可以用下面的指令重新生成

kubeadm token create --print-join-command
  1. 从节点网络配置
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

大家如果对k8s感兴趣,可以多看看官网的文档,自带中文翻译他不香吗。
这里另外贴下参考博客,以及电子书籍:
docker书籍
kubernetes书籍
kubernetes官网
另外一个老哥写的集群安装博客

有啥问题欢迎在评论区留言,大家一起探讨,虚拟机网络配置相关的也可以留言询问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值