searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

使用kubeadm部署k8s(无坑版本)

2023-06-25 09:44:06
36
0

系统信息

  • CentOS Linux release 7.6.1810 (Core)
  • 3.10.0-957.27.2.el7.x86_64

环境准备

1. 关闭防火墙 

$ systemctl stop firewalld
$ systemctl disable firewalld

2. 关闭selinux

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

3. 关闭swap

$ echo "vm.swappiness = 0">> /etc/sysctl.conf
$ swapoff -a

4. 将桥接的IPv4流量传递到iptables的链

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

5. 加载内核模块

$ modprobe br_netfilter

6. 设置repo源

$ rm -rfv /etc/yum.repos.d/*

# base repo
$ curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# docker repo
$ curl -o /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# k8s repo 
$ 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

# update cache
$ yum clean all  
$ yum makecache  
$ yum repolist

7. 安装常用包

$ yum install vim bash-completion net-tools gcc -y

8.  安装docker/kubeadm/kubelet(只有node节点需要安装kubelet)

# 安装docker
$ yum install docker-ce -y

# 添加阿里云仓库加速(最好换成自己的) 
$ mkdir -p /etc/docker
$ tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://ahtqbhz9.mirror.aliyuncs.com"]
}
EOF

$ systemctl daemon-reload
$ systemctl restart docker
$ systemctl enable docker

# 安装 kubeadm、kubelet、kubectl
$ yum install -y kubelet-1.20.0 kubeadm-1.20.0 kubectl-1.20.0
$ systemctl enable kubelet

9.  部署Kubernetes Master

# apiserver-advertise-address地址就是master的IP。
$ kubeadm init --kubernetes-version=1.20.0  \
--apiserver-advertise-address=10.128.143.100   \
--image-repository registry.aliyuncs.com/google_containers  \
--service-cidr=10.10.0.0/16 --pod-network-cidr=10.122.0.0/16

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

10. 设置命令补全

$ source <(kubectl completion bash)

11. 安装calico网络

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

12. 查看pod和node

$ kubectl get pod --all-namespaces
$ kubectl get node

13. 如果使用单节点k8s需要取消master节点的污点

$ kubectl taint nodes --all node-role.kubernetes.io/master-

到此为止,您可以愉快的使用k8s了 ^_^

0条评论
0 / 1000
Dreams
3文章数
0粉丝数
Dreams
3 文章 | 0 粉丝
Dreams
3文章数
0粉丝数
Dreams
3 文章 | 0 粉丝
原创

使用kubeadm部署k8s(无坑版本)

2023-06-25 09:44:06
36
0

系统信息

  • CentOS Linux release 7.6.1810 (Core)
  • 3.10.0-957.27.2.el7.x86_64

环境准备

1. 关闭防火墙 

$ systemctl stop firewalld
$ systemctl disable firewalld

2. 关闭selinux

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

3. 关闭swap

$ echo "vm.swappiness = 0">> /etc/sysctl.conf
$ swapoff -a

4. 将桥接的IPv4流量传递到iptables的链

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

5. 加载内核模块

$ modprobe br_netfilter

6. 设置repo源

$ rm -rfv /etc/yum.repos.d/*

# base repo
$ curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# docker repo
$ curl -o /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# k8s repo 
$ 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

# update cache
$ yum clean all  
$ yum makecache  
$ yum repolist

7. 安装常用包

$ yum install vim bash-completion net-tools gcc -y

8.  安装docker/kubeadm/kubelet(只有node节点需要安装kubelet)

# 安装docker
$ yum install docker-ce -y

# 添加阿里云仓库加速(最好换成自己的) 
$ mkdir -p /etc/docker
$ tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://ahtqbhz9.mirror.aliyuncs.com"]
}
EOF

$ systemctl daemon-reload
$ systemctl restart docker
$ systemctl enable docker

# 安装 kubeadm、kubelet、kubectl
$ yum install -y kubelet-1.20.0 kubeadm-1.20.0 kubectl-1.20.0
$ systemctl enable kubelet

9.  部署Kubernetes Master

# apiserver-advertise-address地址就是master的IP。
$ kubeadm init --kubernetes-version=1.20.0  \
--apiserver-advertise-address=10.128.143.100   \
--image-repository registry.aliyuncs.com/google_containers  \
--service-cidr=10.10.0.0/16 --pod-network-cidr=10.122.0.0/16

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

10. 设置命令补全

$ source <(kubectl completion bash)

11. 安装calico网络

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

12. 查看pod和node

$ kubectl get pod --all-namespaces
$ kubectl get node

13. 如果使用单节点k8s需要取消master节点的污点

$ kubectl taint nodes --all node-role.kubernetes.io/master-

到此为止,您可以愉快的使用k8s了 ^_^

文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
1
0