首页 > 系统相关 >Ubuntu 20.04 LTS 安装Kubernetes 1.26

Ubuntu 20.04 LTS 安装Kubernetes 1.26

时间:2023-09-02 22:11:58浏览次数:56  
标签:LTS kubernetes Kubernetes -- containerd apt etc vs 20.04

 

1、环境配置

(1)添加主机名称解析记录

cat > /etc/hosts << EOF
192.168.44.200 master01  master01.bypass.cn
192.168.44.201 node01    node01.bypass.cn
192.168.44.202 node02    node02.bypass.cn
EOF

(2)禁止K8s使用虚拟内存

swapoff -a
sed -ri 's@(.*swap.*)@#\1@g' /etc/fstab

(3)开启内核ipv4转发

modprobe br_netfilter

cat > /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
vm.swappiness=0
EOF

sysctl -p /etc/sysctl.d/k8s.conf

(4) 安装ipvsadm,加载ipvs模块

apt-get install ipset ipvsadm -y

cat > /etc/modules-load.d/ipvs.conf << EOF
ip_vs
ip_vs_rr
ip_vs_wrr
ip_vs_sh
nf_conntrack
EOF

加载模块,并进行检查

modprobe --all ip_vs ip_vs_rr ip_vs_wrr  ip_vs_sh  nf_conntrack

lsmod|grep -e ip_vs -e nf_conntrack

 (5)时间同步

apt-get install chrony -y
systemctl start chrony
systemctl enable chrony timedatectl set-timezone Asia/Shanghai chronyc sources

2、部署集群 

(1)安装Containerd

wget http://file.oldxu.net/cri-containerd-1.6.18-linux-amd64.tar.gz
tar xf cri-containerd-1.6.18-linux-amd64.tar.gz -C /
systemctl daemon-reload
systemctl start containerd
systemctl enable containerd
ctr version

mkdir -p /etc/containerd
containerd config default > /etc/containerd/config.toml
vi /etc/containerd/config.toml


 

 修改内容

 [plugins."io.containerd.grpc.v1.cri"]
    sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.9"

[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
            SystemdCgroup = true
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
        [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
         endpoint = ["https://kd88kykb.mirror.aliyuncs.com"]

 

测试

ctr image pull dokcer.io/library/nginx:1.20

(2)安装nerdctl

wget http://file.oldxu.net/nerdctl-1.2.1-linux-amd64.tar.gz
tar xf nerdctl-1.2.1-linux-amd64.tar.gz
mv nerdctl /usr/bin/

#ln -s /usr/bin/docker /usr/bin/nerdctl
#docker images
echo 'source <(nerdctl completion bash)' >> /etc/profile source /etc/profile nerdctl pull nginx:1.18 nerdctl images

 

(3)安装集群工具

curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - 
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF

apt update && apt-get install -y kubeadm=1.26.0-00 kubelet=1.26.0-00 kubectl=1.26.0-00

#下载容器镜像
kubeadm config images list --kubernetes-version v1.26.0
kubeadm config images pull --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.26.0

 

(4)初始化Master节点

kubeadm init \
--apiserver-advertise-address=192.168.44.200 \
--control-plane-endpoint="master01.bypass.cn" \
--image-repository=registry.aliyuncs.com/google_containers \
--kubernetes-version=v1.26.0 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16 \
--cri-socket=/run/containerd/containerd.sock

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

 

(5) 初始化node节点

kubeadm join master01.bypass.cn:6443 --token ai9eru.bueon1ib9bhlf5rz \
--discovery-token-ca-cert-hash sha256:50c21633205d2d47d1c4e496a422e2c56018a5bc03d62849ff5c5ceb8456407f

 

(6)安装Calico网络插件

wget https://docs.projectcalico.org/manifests/calico.yaml
vi calico.yaml # - name: CALICO_IPV4POOL_CIDR # value: "10.244.0.0/16"
kubectl apply -f calico.yaml

 

标签:LTS,kubernetes,Kubernetes,--,containerd,apt,etc,vs,20.04
From: https://www.cnblogs.com/xiaozi/p/17584569.html

相关文章

  • Kubernetes运维-Pod调试
    调试pod最简单的方法是在有问题的pod中执行命令,并尝试排除故障。这种方法很简单,但有许多缺点。正在运行的应用pod可能没有排除现有问题所需的所有工具。如果想执行一些需要额外权限的操作,需要重新启动应用pod,以添加新的权限。在docker镜像中添加调试工具会引入安全风险,提升容器权限......
  • 让Kubernetes如虎添翼的16个工具
    在DevOps生态系统中,拥有出色的DevOps工具来减轻人为操作非常重要。每个DevOps阶段都可以使用大量的DevOps工具。如果您在DevOps领域中工作并在容器中运行应用程序,那么Kubernetes是必备工具之一。有数百种工具可与Kubernetes配合使用以添加更多功能。我说的是用于更好......
  • Runecast Analyzer 6.7 (VMware, AWS, Azure, Kubernetes) - 安全与合规性解决方案
    RunecastAnalyzer6.7(VMware,AWS,Azure,Kubernetes)-安全与合规性解决方案SecureandCompliantWorkloadsAnywhere请访问原文链接:https://sysin.org/blog/runecast/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org随时随地安全且合规的工作负载针对VMwar......
  • Kubernetes排错
    无法获取容器统计信息(Failedtogetsystemcontainerstats)查看日志报错如下[root@k8s-master~]#tail-f/var/log/messagesFailedtogetsystemcontainerstatsfor"/system.slice/docker.service":failedtogetcgroupstatsfor"/system.slice/docker.servic......
  • CoreDNS之光:Kubernetes中的服务发现策略
     原创 云原生百宝箱 云原生百宝箱 2023-08-2121:35 发表于河南收录于合集#Kubernetes21个#CNCF生态4个点击上方蓝字 ......
  • Kubernetes
    一、简介   k8s、Google开源。容器编排引擎。   k8s的目标是让部署容器化的应用简单且高效【powerful】,k8s提供应用部署,规划,更新,维护的一种机制。   支持自动化部署、大规模可伸缩。应用容器化管理。二、组成    一个k8s系统,通常称为一个k8s集群【......
  • Kubernetes集群部署三节点yum部署
    一、修改主机名(三个节点都操作)vi/etc/hostname#跟换主机名systemctlrestartsystemd-hostnamed#修改完成后重新链接服务二、同步时间(三个节点都操作)yuminstallntpdate-yntpdatetime.windows.com#时区设置cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime#最......
  • Kubernetes三主两从集群搭建
    安装前必读请不要使用带中文的服务器和克隆的虚拟机生产环境建议使用二进制安装方式请将该文档复制一份,然后进行更改安装,并记录每一个步骤的返回信息,有问题可以直接发送部署文档进行问答,解决更加迅kubeadm高可用安装k8s集群最新版基本环境配置Kubeadm安装方式自1.14版本以后,安装方......
  • unbutu20.04离线安装谷歌浏览器
    浏览器安装包下载地址 链接:https://pan.quark.cn/s/634b6bed2f68 下载之后上传到你的unbutu在你存安装包的路径输入dpkg-igoogle-chrome-stable_current_amd64.deb之后按照系统提示跟安装其他软件一样......
  • Kubernetes编程—— 如何操作自定义资源
    如何操作自定义资源client-go为每种kubernetes内置资源提供对应的clientset和informer。那如果我们要监听和操作自定义资源对象,应该如何做呢?这里我们有两种方式:我理解意思是说:1、使用client-go提供的dynamicClient来操作自定义操作资源对象,当......