统信UOS搭建kubernetes(k8s)教程

本文详细介绍了如何在虚拟机上安装UOS,包括设置固定IP、开启root权限、关闭防火墙和swap分区、配置iptables、时间同步、安装Docker、设置镜像源、安装kubelet、kubeadm和kubectl,以及节点加入Kubernetes集群的过程。
摘要由CSDN通过智能技术生成

一.虚拟机安装UOS

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
自行拟定虚拟机名称与安装位置
在这里插入图片描述
在这里插入图片描述
内存建议给大点:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
固定IP地址
在这里插入图片描述
设置完之后可以ping一下百度,看网络是否联通
在这里插入图片描述
开启root权限:进入设置切换到开发者模式
在这里插入图片描述
直到如下显示:
在这里插入图片描述
输入sudo passwd root设置root密码,然后输入su,输入刚刚设置的密码进入root模式

二.基本环境配置

step1.关闭防火墙

# systemctl stop firewalld
# systemctl disable firewalld

若提示防火墙未装载,直接进行下一步

step2.关闭swap分区

# swapoff -a  # 临时
# sed -ri 's/.*swap.*/#&/' /etc/fstab    # 永久

输入reboot重启系统,关闭swap的操作才能生效

step3.将桥接的IPv4流量传递到iptables的链

# cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
# sysctl --system  # 生效

step4.时间同步

# apt install ntpdate -y
# ntpdate time.windows.com

若报错无法定位软件包,则执行apt-get update命令进行更新资源

step5.安装Docker

二进制手动安装:

# wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz
# tar xf docker-20.10.9.tgz
# chmod +x docker/*
# cp docker/* /usr/bin/

创建一个文本docker.service,输入以下内容:

# vim /usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
 
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
 
[Install]
WantedBy=multi-user.target

启动docker

root@master:/# systemctl enable --now docker
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /lib/systemd/system/docker.service.
root@master:/# docker --version
Docker version 20.10.9, build c2ea9bc

设置开机启动:

#  systemctl enable docker

step6.配置Docker

打开

vi /etc/docker/daemon.json

输入:

{
"registry-mirrors": [
    "https://dockerhub.azk8s.cn",
    "https://reg-mirror.qiniu.com",
    "https://quay-mirror.qiniu.com",
    "https://b9pmyelo.mirror.aliyuncs.com"
  ]
}
root@master:/# systemctl daemon-reload
root@master:/# systemctl restart docker

step7.安装 kubelet kubeadm kubectl

# 安装基础环境
# apt-get install -y ca-certificates curl software-properties-common apt-transport-https curl
# curl -s https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
# 执行配置k8s阿里云源  
vim /etc/apt/sources.list.d/kubernetes.list
#加入以下内容
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
# 执行更新
apt-get update -y
# 安装kubeadm、kubectl、kubelet  
apt-get install -y kubelet=1.23.1-00 kubeadm=1.23.1-00 kubectl=1.23.1-00
# 阻止自动更新(apt upgrade时忽略)。所以更新的时候先unhold,更新完再hold。
apt-mark hold kubelet kubeadm kubectl

step8.初始化master节点

在master节点中创建:

vi kubeadm-config.yaml

输入以下内容:
将下面的 advertiseAddress: 192.168.67.143修改为当前master节点的ip地址

apiVersion: kubeadm.k8s.io/v1beta3
bootstrapTokens:
- groups:
  - system:bootstrappers:kubeadm:default-node-token
  token: abcdef.0123456789abcdef
  ttl: 24h0m0s
  usages:
  - signing
  - authentication
kind: InitConfiguration
localAPIEndpoint:
  advertiseAddress: 192.168.67.143
  bindPort: 6443
nodeRegistration:
  criSocket: /var/run/dockershim.sock
  imagePullPolicy: IfNotPresent
  name: master
  taints: null
---
apiServer:
  timeoutForControlPlane: 4m0s
apiVersion: kubeadm.k8s.io/v1beta3
certificatesDir: /etc/kubernetes/pki
clusterName: kubernetes
controllerManager: {}
dns: {}
etcd:
  local:
    dataDir: /var/lib/etcd
imageRepository: registry.cn-hangzhou.aliyuncs.com/google_containers
kind: ClusterConfiguration
kubernetesVersion: 1.23.1
networking:
  dnsDomain: cluster.local
  serviceSubnet: 10.96.0.0/12
scheduler: {}
---
kind: KubeletConfiguration
apiVersion: kubelet.config.k8s.io/v1beta1
cgroupDriver: cgroupfs

安装master组件:
可以先执行kubeadm config images pull,看能否链接到国外镜像,如不能,则转用阿里云镜像
(1)通过指令kubeadm config images list首先查看kubeadm config 依赖的镜像有哪些:

k8s.gcr.io/kube-apiserver:v1.23.17
k8s.gcr.io/kube-controller-manager:v1.23.17
k8s.gcr.io/kube-scheduler:v1.23.17
k8s.gcr.io/kube-proxy:v1.23.17
k8s.gcr.io/pause:3.6
k8s.gcr.io/etcd:3.5.1-0
k8s.gcr.io/coredns/coredns:v1.8.6

(2)总共7个,根据镜像名称,依次从阿里云拉取:

root@master:/# docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.23.17
root@master:/# docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.23.17
root@master:/# docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.23.17
root@master:/# docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.23.17
root@master:/# docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.6
root@master:/# docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.5.1-0
root@master:/#  docker pull coredns/coredns:1.8.6

注意最后一个镜像,去掉版本前的“v”,可通过docker pull coredns/coredns:1.8.6直接拉取
通过docker image ls查看下载好的镜像:

root@master:/# docker image ls
REPOSITORY                                                                    TAG        IMAGE ID       CREATED         SIZE
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver            v1.23.17   62bc5d8258d6   5 months ago    130MB
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy                v1.23.17   f21c8d21558c   5 months ago    111MB
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager   v1.23.17   1dab4fc7b6e0   5 months ago    120MB
registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler            v1.23.17   bc6794cb54ac   5 months ago    51.9MB
registry.cn-hangzhou.aliyuncs.com/google_containers/etcd                      3.5.1-0    25f8c7f3da61   21 months ago   293MB
coredns/coredns                                                               1.8.6      a4ca41631cc7   22 months ago   46.8MB
registry.cn-hangzhou.aliyuncs.com/google_containers/pause                     3.6        6270bb605e12   23 months ago   683kB

(3)将拉取下来的images重命名为kubeadm config所需的镜像名字

root@master:/# docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.23.17 k8s.gcr.io/kube-apiserver:v1.23.17
root@master:/# docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.23.17 k8s.gcr.io/kube-proxy:v1.23.17
root@master:/# docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.23.17 k8s.gcr.io/kube-controller-manager:v1.23.17
root@master:/# docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.23.17  k8s.gcr.io/kube-scheduler:v1.23.17
root@master:/# docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.5.1-0 k8s.gcr.io/etcd:3.5.1-0
root@master:/# docker tag coredns/coredns:1.8.6 k8s.gcr.io/coredns/coredns:v1.8.6 
root@master:/# docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.6 k8s.gcr.io/pause:3.6

初始化:
先通过systemctl status kubelet和systemctl status docker查看kubectl和docker是否运行,如果没有,则输入systemctl start kubelet启动对应服务
执行kubeadm init --config kubeadm-config.yaml

在这里插入图片描述

直到显示successfully表示初始化成功,,记下红色框中的内容
复制粘贴这3条指令执行

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

下面这条指令记录下来即可,在node节点输入该指令加入集群

kubeadm join 192.168.67.149:6443 --token abcdef.0123456789abcdef \
--discovery-token-ca-cert-hash sha256:e4601dc7967a267a69456af1807a0bfb9a2b0910f43b45706b38fe1c029ef55a

节点加入成功后会显示如下:
在这里插入图片描述
此时返回master节点,输入kubectl get node发现节点为NotReady
在这里插入图片描述

此时在master节点部署 Calico,输入

kubectl apply -f https://docs.projectcalico.org/v3.21/manifests/calico.yaml

等待一段时间后,再次查看,发现节点已经处于Ready状态了
在这里插入图片描述

统信Windows是由中国数码视讯科技股份有限公司开发的一款操作系统平台,主要针对国内用户群体设计,旨在提供安全、稳定、兼容丰富的应用生态的操作系统解决方案。统信Windows的特点包括: 1. **安全可靠**:作为国产操作系统之一,统信Windows通过内嵌自主可控的安全组件,能够有效抵御各种网络安全威胁,同时支持多种安全策略,保证数据安全。 2. **全面兼容**:统信Windows努力保持对Windows系统的高度兼容性,使得原有的Windows应用程序和驱动程序可以在统信Windows上正常运行,降低了迁移成本。 3. **高效性能**:经过优化的设计,统信Windows可以提供流畅的操作体验,无论是日常办公还是运行复杂的应用,都能满足高性能需求。 4. **定制化服务**:针对不同行业和场景的需求,统信Windows提供定制化的操作系统解决方案和服务,包括但不限于桌面版、服务器版等,适应多样化应用场景。 5. **持续创新**:紧跟技术发展潮流,统信Windows不断引入新的技术和功能,如云服务集成、人工智能辅助等,提升用户体验和操作效率。 6. **开放合作**:统信Windows致力于构建开放的生态系统,吸引更多的开发者和合作伙伴加入,共同推动软硬件生态的发展,提供更多高质量的应用和服务。 统信Windows自发布以来,已经得到了政府机构、教育、医疗等多个行业的关注和支持,特别是在信息安全日益重要的背景下,其市场前景广阔。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值