初始化检查

操作系统:ubuntu22.04 LTS

docker:20.10.18

kubelet: v1.23.6

kubeadm:v1.23.6

kubectl: v1.23.6

1、校准时间:

 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

2、修改系统配置,允许桥接流量

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

  

3、关闭swap和防火墙

swapoff -a # 临时
sed -ri 's/.*swap.*/#&/' /etc/fstab # 永久
关闭防火墙:
systemctl disable --now ufw
systemctl stop ufw

  

4、使用aliyun镜像

sed -i 's@http://cn.archive.ubuntu.com@https://mirrors.aliyun.com@g' /etc/apt/sources.list
apt-get update

vim /etc/netplan/00-installer-config.yaml

network:
ethernets:
ens33:
dhcp4: false
addresses: [192.168.3.101/24]
nameservers:
addresses: [192.168.3.1,223.5.5.5,233.6.6.6]
gateway4: 192.168.3.1
ethernets:
ens37:
dhcp4: false
addresses: [10.0.8.101/24] version: 2

  

5、安装docker

apt-get update
apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
apt-get -y update
apt-get install containerd.io docker-ce docker-ce-cli

  

修改docker 配置文件  #cat /etc/docker/daemon.json

  {
"data-root": "/data/docker",
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com",
"https://mjpmak3l.mirror.aliyuncs.com"
],
"data-root": "/data/docker",
"insecure-registries": ["127.0.0.1/8","10.0.8.121","harbor.myland.com"],
"max-concurrent-downloads": 10,
"live-restore": true,
"log-driver": "json-file",
"log-level": "warn",
"log-opts": {
"max-size": "50m",
"max-file": "1"
},
"storage-driver": "overlay2"
}
systemctl daemon-reload
systemctl restart docker
systemctl enable docker

6、修改containerd配置文件

生成配置文件
mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml 修改配置文件
sed -i 's/SystemdCgroup = false/SystemdCgroup = true/' /etc/containerd/config.toml

grep 'SystemdCgroup' -B 11 /etc/containerd/config.toml   #检查是否修改成功

systemctl daemon-reload

systemctl restart containerd.service

systemctl enable containerd

  

7、安装kubeadm、kubelet和kubectl

由于这三个程序的托管仓库在google站点服务上,访问存在问题,目前可以使用阿里云(http://mirrors.aliyun.com)或者Azure(http://mirror.azure.cn)

#参见 https://developer.aliyun.com/mirror/kubernetes?spm=a2c6h.13651102.0.0.73281b11JvSrJo

apt-get update && apt-get install -y apt-transport-https
#添加kubernetes官方秘钥
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - #配置kubernetes仓库
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF cp /etc/apt/trusted.gpg /etc/apt/trusted.gpg.d/kube-trusted.gpg
apt-get update
apt install kubeadm=1.23.6-00 kubelet=1.23.6-00 kubectl=1.23.6-00 -y #由于kubelet v1.24及以后新版本不支持docker,这里安装老版本
systemctl start kubelet
systemctl enabel kubelet 

8、安装kubernetes

kubeadm init \
--image-repository registry.aliyuncs.com/google_containers \ #指定使用的镜像仓库 ,默认的为gcr.io,在国内一般无法访问
--kubernetes-version v1.25.3 \ #版本
--control-plane-endpoint k8s-api.ilinux.io \ #控制平面的的固定访问端点,IP地址或者DNS都可以,集群管理员与集群组件的kubeconfig配置文件的API Server访问地址
--apiserver-advertise-address 10.0.8.101 \ # API Sever通告给其他组件的IP地址,一般为Mater节点用于集群内部通信的地址,0.0.0.0wei所哟可以地址
--pod-network-cidr 10.201.0.0/16 \ #POD地址网段
--service-cidr 10.97.0.0/16 \ #SERVICE地址网段
--token-ttl 0

 安装完成后有如下输出:

Your Kubernetes control-plane has initialized successfully!

To start using your cluster, you need to run the following as a regular user:

  mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config Alternatively, if you are the root user, you can run: export KUBECONFIG=/etc/kubernetes/admin.conf You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
https://kubernetes.io/docs/concepts/cluster-administration/addons/ You can now join any number of control-plane nodes by copying certificate authorities
and service account keys on each node and then running the following as root: kubeadm join k8s-api.ilinux.io:6443 --token 96xjvw.wte9wdakt7csogrl \
--discovery-token-ca-cert-hash sha256:5353f5f85b475859f67b11ac299cad4fb53eb41ddec06142c4fcef35d0229b34 \
--control-plane Then you can join any number of worker nodes by running the following on each as root: kubeadm join k8s-api.ilinux.io:6443 --token 96xjvw.wte9wdakt7csogrl \
--discovery-token-ca-cert-hash sha256:5353f5f85b475859f67b11ac299cad4fb53eb41ddec06142c4fcef35d0229b34

  

node节点可以只安装kubelet和kubeadm即可,按照上面的加入命令 加入集群

ubuntu22.04安装 kubernetes(docker)的更多相关文章

  1. Ubuntu22.04 安装配置流水账

    前两天为了测一个CH340的bug, 装了三遍20.04. bug解决完, 心想反正也要重新装各种软件, 不如直接装22.04吧. 把涉及的安装记录一下方便将来参考. 制作启动U盘 在Ubuntu网站 ...

  2. Ubuntu22.04 安装配置VNC Server

    如果转载, 请注明出处 https://www.cnblogs.com/milton/p/16730512.html Ubuntu22.40下VNC和远程桌面的区别 使用远程桌面时, 用户必须在hos ...

  3. 在Ubuntu 14.04安装和使用Docker

    Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器.然而,Docker与虚拟机不同,它使用了沙箱机制,Docker容器不运行操作系统,它共享主机上的 ...

  4. [转]在Ubuntu 14.04安装和使用Docker

    在Ubuntu 14.04安装和使用Docker 作者:chszs,版权所有,未经同意,不得转载.博主主页:http://blog.csdn.net/chszs Docker是一个开源软件,它可以把一 ...

  5. ubuntu 12.04 安装Docker 实战

    2016-3-8 从网络服务商那里申请到一台Ubuntu测试服务器,用来测试安装Docker环境. 注:本人初学Docker,对Linux命令也仅是稍稍了解,如有错误,烦请告知. 查看系统相关信息 可 ...

  6. Ubuntu_14.04安装docker

    Ubuntu_14.04安装docker $ sudo apt-get update $ sudo apt-get install apt-transport-https ca-certificate ...

  7. Centos7上安装Kubernetes集群部署docker

    一.安装前准备1.操作系统详情需要三台主机,都最小化安装 centos7.3,并update到最新 [root@master ~]# (Core) 角色 主机名 IPMaster master 192 ...

  8. Ubuntu 16.04+.Net Core+Docker+Uginx安装部署

    前言 最近公司的项目打算移植到.Net Core平台,所以调研了一下.Net Core在Linux下的安装部署.本篇文章会一步步的描述从安装到配置到部署的全部过程.在文章的结构和内容里,笔者借鉴了很多 ...

  9. Ubuntu-18.04安装Docker

    Docker 介绍 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制 ...

  10. ubuntu12.04安装Docker

    由于公司的虚拟机上的ubuntu都是12.04的,所以要在ubuntu12.04上安装Docker.Docker目前只能运行在64位的机器上面. 先要升级内核 sudo apt-get update ...

随机推荐

  1. C语言小程序-天天酷跑类游戏 26号完成

    1.创建游戏内背景 2.实现人物 奔跑 跳跃 优化帧 3.障碍物 出现 https://kxd.lanzoul.com/iKXU20elmtah 开源地址 半成品

  2. try-catch易错分析

    /* * @author YAM */public class Test01 { public static void main(String[] args) { try { showExce(); ...

  3. 【译】.NET 7 中的性能改进(三)

    原文 | Stephen Toub 翻译 | 郑子铭 PGO 我在我的 .NET 6 性能改进一文中写了关于配置文件引导优化 (profile-guided optimization) (PGO) 的 ...

  4. dvgis计算两点间距离的问题

    先贴一段代码,是dvgis里的distance.js源码,dvgis是cesium的二次封装,可以参考参考: 1import{Cesium}from'@dc-modules/namespace' 2i ...

  5. [java安全基础 03]CC1

    Commons-Collerctions链条 Apache Commons-Collections简介 Apache Commons Collections是一个扩展了Java标准库里的Collect ...

  6. honoka和格点三角形

    题目: honoka最近在研究三角形计数问题.她认为,满足以下三个条件的三角形是"好三角形".1.三角形的三个顶点均为格点,即横坐标和纵坐标均为整数.2.三角形的面积为 .3.三角 ...

  7. 如何快速把导出的csv表格数据导入到SqlServer中

    (不要建自增字段,否则会出现第一个字段数据进不去的情况) 1.打开csv表格 2.打开要导入的表,右键编辑前两百行 3.表格中CTRL+C         数据库中CTRL+V      搞定! ** ...

  8. 基于IGServer的Web地图要素增删改查

    1. 引言 MapGIS IGServer 是中地数码的一款跨平台GIS 服务器产品,提供了空间数据管理.分析.可视化及共享服务 MapGIS IGServer的下载(试用)地址:MapGIS IGS ...

  9. 补充人物pawn的旋转方向

    先找到控制pawn的控制器的Rotation GetControlRotaion() 然后获得控制器的Z轴旋转 创建新的Rotator YawRotaion(0,GetControlRotaion() ...

  10. Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 49; columnNumber: 17; 元素类型为 "configuration" 的内容必须匹配 "

    问题现象: Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance.  Cause: o ...