Hyper-V虚拟机部署k8s集群
Hyper-V虚拟机部署k8s集群
Hyper-V虚拟机部署k8s集群
<1> 环境
本机环境:
Win10 2004 企业版
虚拟机:
Hyper-V
虚拟系统:
CentOS 8.5
<2> 准备工作
(1) 安装虚拟系统
声明
使用任何虚拟机均可, 但两种以上虚拟机安装在一台设备上可能引起冲突.
本文使用 Hyper-V 示范, 不熟悉 Hyper-V 安装及使用的朋友可以参见本人笔记: 使用 Hyper-V 安装 Linux
-
首先创建一个 CentOS 虚拟机, 镜像采用 CentOS-8.5.2111-x86_64-boot.iso, 下方有下载链接:
链接:https://pan.baidu.com/s/12mLDGsNQugKpzYNujMen4g
提取码:yyds -
设置虚拟机最小内存为 2048M, 虚拟处理器设置为 2 个以上.
(2) 安装 Docker
注: 若安装软件时使用 yum 没有镜像源, 可以把以下文件拷贝到 /etc/yum.repos.d
中:
链接:https://pan.baidu.com/s/1Gnj0Mx6GPqr6OaflEN6ObQ
提取码:yyds
- 安装软件相关的依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
- 因为 docker 镜像在外网地址无法访问, 所以需要设置yum源为阿里云镜像地址
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 输入以下指令安装 docker:
yum -y install docker-ce
- 如果出现以下报错:
Failed to synchronize cache for repo 'AppStream', ignoring this repo.
修改镜像地址解决:
对照 /etc/yum.repos.d/CentOS-AppStream.repo
中的一下内容:
mirrorlist=http://mirrorlist.centos.org/?release=$releasever-stream&arch=$basearch&repo=AppStream&infra=$infra
baseurl=https://mirrors.aliyun.com/centos/8-stream/AppStream/$basearch/os/
- 安装成功后启动 docker
service docker start
此时在控制台输入 docker
会出现 docker 帮助页面
6. 设置开机启动
systemctl enable docker
<3> 安装 Kubernetes
控制台导入k8s安装源:
cat <<EOF > kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
mv kubernetes.repo /etc/yum.repos.d/
控制台输入下面语句:
yum install -y kubelet-1.22.4 kubectl-1.22.4 kubeadm-1.22.4
<4> 简要配置
启动 kubelet, docker, 并设置开机启动
systemctl enable kubelet
systemctl start kubelet
systemctl enable docker
systemctl start docker
修改 docker 配置文件
cat <<EOF > daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": ["https://ud6340vz.mirror.aliyuncs.com"]
}
EOF
mv daemon.json /etc/docker/
重启生效
systemctl daemon-reload
systemctl restart docker
<5> 克隆虚拟机制造节点
选择位置并导出虚拟机:
导入刚才导出的虚拟机:
按步骤操作:
克隆过来的新虚拟机要改一些存储路径.
完成后将复制得到的虚拟机改名区分:
<6> 配置节点
- 分别在两个虚拟机上修改主机名:
hostnamectl set-hostname master 主节点
hostnamectl set-hostname node1 辅节点
- 分别查询两个主机的 ip 地址, 输入**
ifconfig
** 指令得到 ip 地址:
- 分别修改所有节点的 host 文件
vim /etc/hosts
172.23.20.116 master
172.23.19.108 node1
- 所有节点关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
- 主节点上启动服务
kubeadm init --image-repository=registry.aliyuncs.com/google_containers
常见错误:
系统内存分配过小, 将虚拟机内存最小值设置为 2048M 以上.
输入指令: swapoff -a 关闭swap
输入 yum install iproute-tc 安装插件
删除指定文件夹内的旧 k8s 配置文件
成功:
会显示以下成功信息和登陆语句.
6. 按要求输入语句:
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
- 在子节点上输入最后一行的登陆语句:
kubeadm join 172.23.20.116:6443 --token fkv2g4.nf7zwdi1bf48wq4g \
--discovery-token-ca-cert-hash sha256:f8a29e6959208df6dee821b1347d0d1ffa4e556aa4b5a4feaf615e2d443877ef
启动成功信息:
8. 主节点输入一下命令查询连接的节点:
kubectl get nodes
更多推荐
所有评论(0)