安装k8s集群

一、前置环境配置

安装两台centos

实验环境,一台pc配有docker环境,有两个centsos7容器,其中一个容器作为master,一个作为node。如果master与node都是用默认端口,会存在冲突,所以在此基础上做细微的调整。

master端口:

服务名宿主机端口docker内端口
API Server64436443
etcd2379,23802379,2380
Controller Manager1025210252
scheduler1025110251
Kubelet1025010250
container runtime23752375
NodePort3000-32673000-3267

NodePort由k8s自由分配,我们不用处理。

node端口:

服务名宿主机端口docker内端口
API Server54435443
etcd1379,13801379,1380
Controller Manager92529252
scheduler92519251
Kubelet92509250
container runtime13751375
NodePort5000-52673000-3267

NodePort由k8s自由分配,我们不用处理。

运行master 容器

docker run --name k8s-master --hostname k8s-master  --privileged=true -p 6643:6643 -p 2379:2379 -p 2380:2380 -p 10252:10252 -p 10251:10251 -p 10250:10250 -p 2375:2375 -p 3000-3267:3000-3267 -v /var/run/docker.sock:/var/run/docker.sock  -d  centos:centos7 /usr/sbin/init

systemctl start docker
systemctl enable docker

运行node容器

docker run --name k8s-node --hostname k8s-node  --privileged=true -p 5643:6643 -p 1379:2379 -p 1380:2380 -p 9252:10252 -p 9251:10251 -p 9250:10250 -p 1375:2375 -p 5000-5267:3000-3267 -v /var/run/docker.sock:/var/run/docker.sock -d  centos:centos7 /usr/sbin/init

systemctl start docker
systemctl enable docker

关闭防火墙

centos7容器默认不带防火墙,真机的话需要关闭一下。

systemctl stop firewalld
systemctl disable firewalld

关闭selinux

centos7容器默认不带selinux,真机的话需要关闭一下。

sed -i 's/enforcing/disabled' /etc/selinux/config #永久关闭
setenforece 0 #临时关闭

关闭swap(k8s禁止虚拟内存以提高性能)

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

在master添加hosts

master与node在同一台宿主机上,外部ip相同都是宿主机的ip,这里使用宿主机的不同端口来区分master容器和node容器,这里就不用配置hosts了。真机的话需要配置一下。

cat >> /etc/hosts << EOF
192.168.172.131 k8smaster
192.168.172.132 k8snode
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 # 生效

时间同步

yum install ntpdate -y
ntpdate time.windows.com

二、kubeadm安装

master,node都需要安装docker、kubelet、kubeadmin。
配置docker在yum中的国内镜像源:

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装docker

yum install docker-ce-19.03.13 -y

/etc/docker/daemon.json 配置docker国内加速器

vim /etc/docker/daemon.json 

{
	"registry-mirrors": ["https://registry.docker-cn.com"]
}
systemctl enable docker.service

安装k8s组件

添加k8s组件 kubelet,kubeadmin,kubectl的阿里云源

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

[kubernetes]

name=Kubernetes

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

enabled=1

gpgcheck=0

repo_gpgcheck=0

gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg

http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

安装组件

yum install -y kubelet-1.20.6 kubeadm-1.20.6 kubectl-1.20.6
systemctl enable kubelet.service

测试k8s组件是否都安装成功

yum list installed | grep kubelet
yum list installed | grep kubeadm
yum list installed | grep kubectl

master节点初始化

kubeadm init --image-repository \ 
registry.aliyuncs.com/google_containers \ 
--kubernetes-version=v1.20.6 \ 
--pod-network-cidr=10.244.0.0/16 \ 
--apiserver-advertise-address=192.168.11.109 \
--cri-socket unix:///var/run/cri-dockerd.sock
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值