k8s 安装

前面依赖安装,可以参考docker安装

  • kubelet: k8s 的核心服务
  • kubeadm: 这个是用于快速安装 k8s 的一个集成工具,我们在master1和worker1上的 k8s 部署都将使用它来完成。
  • kubectl: k8s 的命令行工具,部署完成之后后续的操作都要用它来执行

前置条件:

1.安装ssh

复制代码
sudo apt-get install openssh-server
sudo ufw allow ssh

2.关闭 swap 内存

执行如下命令关闭swap内存

复制代码
#临时
swapoff -a
#永久
sudo sed -i '/ swap / s/^(.*)$/#1/g' /etc/fstab

3.修改内核参数

复制代码
sudo tee /etc/modules-load.d/containerd.conf <<EOF
overlay
br_netfilter
EOF

sudo modprobe overlay
sudo modprobe br_netfilter

#配置网络参数
sudo tee /etc/sysctl.d/kubernetes.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF

sudo sysctl --system

其实这三个的下载很简单,直接用apt-get就好了,但是因为某些原因,它们的下载地址不存在了。所以我们需要用国内的镜像站来下载,也很简单,依次执行下面五条命令即可

1.使得 apt 支持 ssl 传输

复制代码
apt-get update && apt-get install -y apt-transport-https

2.下载 gpg 密钥

复制代码
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -

3.添加 k8s 镜像源

复制代码
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF

4.更新源列表

复制代码
apt-get update

5.安装 kubectl,kubeadm以及 kubelet

复制代码
apt-get install -y kubelet kubeadm kubectl

直接在/etc/apt/sources.list里添加kubernetes-apt安装包下载_开源镜像站-阿里云 是不行的,因为这个阿里镜像站使用的ssl进行传输的,所以要先安装apt-transport-https并下载镜像站的密钥才可以进行下载

6.运行systemctl start命令启动kubelet服务,并设置为开机自动启动

复制代码
root@master01:/app# systemctl start kubelet
root@master01:/app# systemctl enable kubelet

wsl中用service替换

整体指令:

复制代码
sudo ufw disable
sudo apt install selinux-utils
sudo setenforce 0
sudo bash -c 'echo 'SELINUX=disabled' > /etc/selinux/conifg'
sudo bash -c 'echo '/usr/sbin/iptables -P FORWARD ACCEPT' >> /etc/rc.local'
sudo iptables -P FORWARD ACCEPT
sudo sed -i 's/.*swap.*/#&/' /etc/fstab

sudo tee /etc/sysctl.d/k8s.conf <<-'EOF' 
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF

sudo modprobe br_netfilter
sudo sysctl --system
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

sudo su - && sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - && sudo apt install -y docker-ce && sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" && sudo apt update && sudo curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
sudo curl -o kubernetes.list https://raw.githubusercontent.com/fofcn/go-devops/main/release/pipeline/k8s/aliyun-kubernetes.list
sudo mv kubernetes.list /etc/apt/sources.list.d/kubernetes.list 
sudo curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
sudo apt update 
sudo apt-cache madison kubelet
sudo apt-cache madison kubectl | grep 1.18.4-00
sudo apt install -y kubelet=1.18.4-00 kubeadm=1.18.4-00 kubectl=1.18.4-00
apt-mark hold kubelet kubeadm kubectl
sudo systemctl enable kubelet 
sudo systemctl start kubelet

参考文档

1、安装docker和containerd:Install Docker Engine on Ubuntu | Docker Docs

2、安装kubeadm:安装 kubeadm | Kubernetes

3、安装后:11 | 从0到1:搭建一个完整的Kubernetes集群-深入剖析Kubernetes-极客时间

4、CNI:https://www.jianshu.com/p/d446121dbfc2

5、配置 API - kubeadm 配置 (v1beta3) - 《Kubernetes v1.26 中文文档》 - 书栈网 · BookStack

相关推荐
weixin_3993806941 分钟前
k8s一键部署tongweb企业版7049m6(by why+lqw)
java·linux·运维·服务器·云原生·容器·kubernetes
IT成长日记1 小时前
【Docker基础】Docker数据卷管理:docker volume ls及其参数详解
运维·docker·容器·volume ls
偷萧逸苦茶1 小时前
docker常见命令
docker·容器·eureka
慌糖10 小时前
微服务介绍
微服务·云原生·架构
高山莫衣15 小时前
Docker Desktop导致存储空间不足时的解决方案
docker·容器·eureka
鹏大师运维15 小时前
在银河麒麟V10 SP1上手动安装与配置高版本Docker的完整指南
linux·运维·docker·容器·麒麟·统信uos·中科方德
Ahlson15 小时前
【fnNAS】docker的nginx配置html
nginx·docker·容器·fnnas
LuckyLay15 小时前
Compose 常用命令详解——AI教你学Docker
docker·容器·eureka
阿里云云原生15 小时前
阿里云可观测 2025 年 6 月产品动态
云原生
阿里云云原生15 小时前
30 秒锁定黑客攻击:SLS SQL 如何从海量乱序日志中“揪”出攻击源
云原生