首页
搜索 搜索
聚焦

【世界速看料】微服务 - 搭建k8s(kubeadm)模拟复杂的生产环境(上篇)

2023-03-08 13:17:32 腾讯云

概述

在之前的k8s实践中,我们使用minikube搭建了k8s环境,为了更真实的展示生产级别的k8s,本节课采用kubeadm来搭建master+worker集群,实现k8s集群,master、worker在虚拟机上来执行,中间遇到了超级多的坑,在这里系统的总结一下,分上下两篇进行讲解。


【资料图】

kubeadm架构图

一共有3台虚拟服务器主机,上篇主要介绍,kubeadm安装前的准备,kubeadm安装,下篇主要介绍使用Flannel 把Master、worker节点链接在k8s的同一个网络中,安装k8s的模拟环境是一切实践k8s的基础条件。

安装kubeadm前的准备

安装kubeadm前的准备可以说是至关重要的一个环节,如果这个出错,就会造成后面的各种报错,每台机器里都要提前安装好docker。

master IP: 192.168.88.134worker IP: 192.168.88.139console IP: 192.168.88.136

1.改变hostnmae,把名字改成master

sudo vim /etc/hostname 

2.Docker 的配置做一点修改,在“/etc/docker/daemon.json”里把 cgroup 的驱动程序改成 systemd ,然后重启 Docker 的守护进程。

# fix docker issuecat <

3.为了让 Kubernetes 能够检查、转发网络流量,你需要修改 iptables 的配置,启用“br_netfilter”模块。

# iptablescat <

4.你需要修改“/etc/fstab”,关闭 Linux 的 swap 分区。

# Disable Swapsudo swapoff -asudo sed -ri "/\sswap\s/s/^#?/#/" /etc/fstab

安装kubeadm前的准备特别重要,前期准备不正确,容易造成kubeadm安装不正确。

安装 kubeadm

执行下面的脚本,去.bashrc里面添加一下提示的命令:

sudo apt install -y apt-transport-https ca-certificates curl nfs-common#sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpgcurl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -#echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.listcat <

source <(kubectl completion bash) ,执行 source .bashrc 生效。

ubuntu22.04 默认是关闭selinux的,( 我没有使用这个命令) 下面是关闭的命令:

vim /etc/selinux/configSELINUX=disabled

验证kubeadm

kubeadm versionkubectl version --client

恭喜你,kubeadm已经成功安装了。