帮助中心/最新通知

质量为本、客户为根、勇于拼搏、务实创新

< 返回文章列表

【运维相关】k8s安装部署流程(一)

发表时间:2025-01-16 01:32:56 小编:主机乐-Yutio

一、k8s架构

1、工作方式

Kubernetes Cluster = N Master Node + N Worker Node:N主节点+N工作节点; N>=1

2、组成架构

k8s部署架构原理
k8s部署架构原理

二、kubeadm创建集群

1、安装docker(参考之前写的文章链接)

https://cloud.tencent.com/developer/article/2530921

2、安装kubeadm

(1)安装前须知

● 一台兼容的 Linux 主机。Kubernetes 项目为基于 Debian 和 Red Hat 的 Linux 发行版以及一些不提供包管理器的发行版提供通用的指令

● 每台机器 2 GB 或更多的 RAM (如果少于这个数字将会影响你应用的运行内存)

● 2 CPU 核或更多

● 集群中的所有机器的网络彼此均能相互连接(公网和内网都可以)

○ 设置防火墙放行规则

● 节点之中不可以有重复的主机名、MAC 地址或 product_uuid。请参见这里了解更多详细信息。

○ 设置不同hostname

● 开启机器上的某些端口。请参见这里了解更多详细信息。

○ 内网互信

● 禁用交换分区。为了保证 kubelet 正常工作,你 必须 禁用交换分区。

○ 永久关闭

##3、基础环境

代码语言:shell
AI代码解释
复制
#各个机器设置自己的域名 xxx-master为主节点,node1 node2 为分支节点
hostnamectl set-hostname xxxx


# 将 SELinux 设置为 permissive 模式(相当于将其禁用)
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

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

#允许 iptables 检查桥接流量
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system

3、安装kubelet、kubeadm、kubectl

安装参考链接

安装完成后添加自启动

sudo systemctl enable --now kubelet

4、使用kubeadm引导集群

###(1)下载各个机器需要的镜像

代码语言:shell
AI代码解释
复制
sudo tee ./images.sh <<-'EOF'
#!/bin/bash
images=(
kube-apiserver:v1.20.9
kube-proxy:v1.20.9
kube-controller-manager:v1.20.9
kube-scheduler:v1.20.9
coredns:1.7.0
etcd:3.4.13-0
pause:3.2
)
for imageName in ${images[@]} ; do
docker pull registry.cn-hangzhou.aliyuncs.com/lfy_k8s_images/$imageName
done
EOF
   
chmod +x ./images.sh && ./images.sh

安装完成后,将该镜像保存并且克隆两台服务器,后续设置主从节点


联系我们
返回顶部