文档整理参考:虫之教育唐老师
文章目录
K8S是什么
官方定义:Kubernates官网
Kubernetes, also known as K8s,
is an open-source system for automating deployment,
scaling, and management of containerized applications.
Kubernetes也称k8s,是一个开源的用于容器自动化部署,编排和管理的应用。
编排是什么意思?
编排:
1.按照一定的目的依次排列
2.调配、安排
kubernetes,因为k到s之间有8个字母,所以也称K8S。是Google在2014年开源的一个容器编排引擎,使用Go语言开发,用于自动化容器化应用程序的部署、规划、扩展和管理,它将组成应用程序的容器分组为逻辑单元,以便于管理和发现,用于管理云平台中多个主机的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,很多细节都不需要运维人员去进行复杂的手工配置和处理。
ubuntu修改root密码
sudo passwd root
修改静态ip
Ubuntu修改静态ip
先找到配置文件,通常在/etc/netplan/目录下
vim 01-netcfg.yaml
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
addresses: [192.168.10.100/24]
gateway4: 192.168.10.2
nameservers:
addresses: [114.114.114.114]
保存文件并应用配置:
sudo netplan apply
CentOS修改静态ip
可以先使用“nmcli con show”查看网卡信息
网卡的配置文件在
/etc/sysconfig/network-scripts
vmware中网关在哪里?
配置完后需要重启网络服务
systemctl restart network
环境准备
安装Kubernetes前有一些系统设置需要提前设置好
1.关闭防火墙
centOS系列
systemctl stop firewalld
systemctl disable firewalld
ubuntu
systemctl disable --now ufw
2.关闭selinux
# 关闭selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config #永久
setenforce 0 #临时
3.关闭swap
# 关闭swap(k8s禁止虚拟内存以提高性能)
sed -ri 's/.*swap.*/#&/' /etc/fstab #永久
swapoff -a #临时 此命令会关闭所有当前的 swap 分区,但重启后会自动恢复。
如果要在系统重启后仍然保持 swap 关闭,需要编辑 /etc/fstab 文件,注释掉 swap 相关的行
4.修改自定义主机名
hostnamectl set-hostname k8s-master1
5.添加hosts
# 在master添加hosts
cat >> /etc/hosts << EOF
192.168.10.100 k8s-master1
192.168.10.101 k8s-node1
192.168.10.102 k8s-node2
EOF
6.设置网桥参数
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
使参数生效
sudo sysctl --system
7.时间同步
# 时间同步
yum install ntpdate -y
ntpdate time.windows.com
设置时区
tzselect 查询时区
timedatectl set-timezone Asia/Shanghai
修改更新源
修改阿里源为 Ubuntu 18.04 默认的源,集群中每个节点分别修改。
1.先备份默认的源
mv /etc/apt/sources.list /etc/apt/sources.list.bak
2.替换源,在文件前面添加如下配置
vim /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
更新软件源中的所有软件列表
sudo apt update
更新软件
sudo apt upgrade
安装Docker
1.安装Docker必要的软件包
安装必要的软件包以允许 apt 通过 HTTPS 使用存储库,在集群的多个节点分别安装。
sudo apt install -y apt-transport-https ca-certificates software-properties-common
2.配置 Docker 安装源
安装基本工具:安装需要的一些经常使用的工具,在集群的多个节点分别安装。
sudo apt install -y vim curl net-tools python-pip
3.添加 docker 的 GPG key,使用阿里云的
sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
4.设置 docker 镜像源,使用阿里云镜像源
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
5.更新系统的包索引或包列表
sudo apt update
6.安装docker-ce
sudo apt install docker-ce
7.启动docker
sudo systemctl start docker
开机启动
sudo systemctl enable docker
8.查询docker信息
docker info
安装K8S-master
1.安装kubeadm, kubelet, kubectl
kubeadm(安装升级), kubelet(管理容器), kubectl(命令行工具) 三个重要的组件
sudo apt update && sudo apt install -y ca-certificates curl software-properties-common apt-transport-https
curl -s https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
sudo tee /etc/apt/sources.list.d/kubernetes.list <<EOF
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
安装指定的版本(1.27.4)
sudo apt update
sudo apt install -y kubelet=1.27.4-00 kubeadm=1.27.4-00 kubectl=1.27.4-00
sudo apt-mark hold kubelet kubeadm kubectl
不指定安装版本
sudo apt update
sudo apt install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
2.初始化
修改containerd的配置,因为containerd默认从k8s官网拉取镜像
mkdir -p /etc/containerd
生成默认配置文件
containerd config default | sudo tee /etc/containerd/config.toml
修改config.toml三个地方
vim /etc/containerd/config.toml
1.修改sandbox_image
sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.9"
2.修改SystemdCgroup
SystemdCgroup = true
3.修改config_path
config_path = "/etc/containerd/certs.d"
创建镜像加速的目录
mkdir /etc/containerd/certs.d/docker.io -pv
配置加速
cat > /etc/containerd/certs.d/docker.io/hosts.toml << EOF
server = "https://docker.io"