ubuntu22.04安装 kubernetes(docker)
初始化检查
操作系统: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)的更多相关文章
- Ubuntu22.04 安装配置流水账
前两天为了测一个CH340的bug, 装了三遍20.04. bug解决完, 心想反正也要重新装各种软件, 不如直接装22.04吧. 把涉及的安装记录一下方便将来参考. 制作启动U盘 在Ubuntu网站 ...
- Ubuntu22.04 安装配置VNC Server
如果转载, 请注明出处 https://www.cnblogs.com/milton/p/16730512.html Ubuntu22.40下VNC和远程桌面的区别 使用远程桌面时, 用户必须在hos ...
- 在Ubuntu 14.04安装和使用Docker
Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器.然而,Docker与虚拟机不同,它使用了沙箱机制,Docker容器不运行操作系统,它共享主机上的 ...
- [转]在Ubuntu 14.04安装和使用Docker
在Ubuntu 14.04安装和使用Docker 作者:chszs,版权所有,未经同意,不得转载.博主主页:http://blog.csdn.net/chszs Docker是一个开源软件,它可以把一 ...
- ubuntu 12.04 安装Docker 实战
2016-3-8 从网络服务商那里申请到一台Ubuntu测试服务器,用来测试安装Docker环境. 注:本人初学Docker,对Linux命令也仅是稍稍了解,如有错误,烦请告知. 查看系统相关信息 可 ...
- Ubuntu_14.04安装docker
Ubuntu_14.04安装docker $ sudo apt-get update $ sudo apt-get install apt-transport-https ca-certificate ...
- Centos7上安装Kubernetes集群部署docker
一.安装前准备1.操作系统详情需要三台主机,都最小化安装 centos7.3,并update到最新 [root@master ~]# (Core) 角色 主机名 IPMaster master 192 ...
- Ubuntu 16.04+.Net Core+Docker+Uginx安装部署
前言 最近公司的项目打算移植到.Net Core平台,所以调研了一下.Net Core在Linux下的安装部署.本篇文章会一步步的描述从安装到配置到部署的全部过程.在文章的结构和内容里,笔者借鉴了很多 ...
- Ubuntu-18.04安装Docker
Docker 介绍 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制 ...
- ubuntu12.04安装Docker
由于公司的虚拟机上的ubuntu都是12.04的,所以要在ubuntu12.04上安装Docker.Docker目前只能运行在64位的机器上面. 先要升级内核 sudo apt-get update ...
随机推荐
- 学习Java Day21
今天学习了静态导入,可以导入静态方法和静态字段
- JZOJ 3992.Christmas
题目大意 给定一个数列,支持区间加一个数和区间取 \(max\),询问单点询问数值和它被更改的次数 思路 模板的吉司机线段树 维护区间最小值和严格次小值以及最小值的个数 针对询问维护区间和以及区间修改 ...
- 题解 P7623 [AHOI2021初中组] 收衣服
我还在小学的时候以现在初中名义我大五十牛逼参加了这次,然后身败名裂死磕这道题不会,现在觉得自己好傻啊 233333 显然这是要统计每个区间的贡献,所以我们可以打出来这个暴力,统计每个区间的次数,对于 ...
- python 依据IP查找其所属网段
# coding = 'utf-8' # 依据excel表格中所提供的IP,在另一张表中查找其所属网段 import pandas as pd import IPy df = pd.read_exce ...
- sql 查找连续的时间区间以及连续天数
create table tmptable(rq datetime) go insert tmptable values('2010.1.1') insert tmptable values('201 ...
- Blender减面修改器
推荐:使用 NSDT场景设计器 快速搭建 3D场景. 使用Decimate修改器的目的是减少雕刻或 3D 扫描模型的面数. 要使用抽取修改器,请转到对象模式并选择要减少面数的任何模型. 在对象模式中选 ...
- No.2.6
vw/vh:(能够使用vw单位设置网页元素的尺寸) 相对单位 相对视口的尺寸计算结果 vw:viewport width(1vw=1/100视口宽度) vh:viewport height(1vh=1 ...
- 【2】APP自动化-脚本研发2.0-3.0需要重复看视频
calculatorV1.0.py #V1.0 实现手机端计算器自动化测试:使用常量进行参数传递#导入appium类库from appium.webdriver.webdriver import W ...
- javaSE学习三
数组 /*数组的基本特点一.其长度是确定的.数组-旦被创建,它的大小就是不可以改变的.二.其元素必须是相同类型,不允许出现混合类型.三.数组中的元素可以是任何数据类型,包括基本类型和引用类型.四.数组 ...
- DRF全局总结
基础部分 一.创建工程 1.创建虚拟环境 python -m venv 路径 2.安装Django 进入虚拟环境 pip install Django 3.创建项目 django-admin star ...