首页 代码 正文

Kubernetes 学习笔记

2024.9.25 代码 467

VMware虚拟机

VMware下载(需注册登录):https://support.broadcom.com/group/ecx/productdownloads?subfamily=VMware%20Workstation%20Pro,这里选择VMware Workstation Pro 17.0 for Personal Use (Windows)进行下载,版本为17.5.2(2024-05-10)。

整个下载过程比较繁琐,不想折腾的话,可直接这里下载:https://www.123pan.com/s/jersTd-n6eyh
SHA256:2c3a40993a450dc9a059563d07664fc0fb85ae398a57d22b1b4bf0e602417bf7(生成指定哈希值:certutil -hashfile 文件名 sha256)
MD5:c0a0353c1dade2089b55ce04ca942964(生成指定哈希值:certutil -hashfile 文件名 md5)

创建虚拟机

打开VMware,右键「我的计算机」→「新建文件夹」,设置为RockyLinux。

「文件」→「新建虚拟机」→「自定义(高级)」,点击「下一步」→「下一步」→
「稍后安装操作系统」,点击「下一步」→「Linux」,版本选择Rocky Linux 64 位,点击「下一步」→
「虚拟机名称」:RL-1,「位置」:D:\虚拟机\RL\1,点击「下一步」→
「处理器数量」选择2,「内核数量」选择2,点击「下一步」→「内存」选择4G,点击「下一步」→
「使用仅主机模式网络」,点击「下一步」→
「LSI Logic」,点击「下一步」→「SCSI」(服务器专用协议),点击「下一步」→
「创建新虚拟磁盘」,点击「下一步」→「磁盘大小」:100G,「将虚拟磁盘存储为单个文件」,点击「下一步」→「下一步」→「完成」。

把RL-1移动到RockyLinux文件夹下。选中RL-1,编辑虚拟机设置→「添加」→「网络适配器」。选中「CD/DVD」→「使用 ISO 镜像文件」,选择ISO镜像(Rocky Linux下载:https://mirror.sjtu.edu.cn/rocky/9.4/isos/x86_64/Rocky-9.4-x86_64-minimal.iso,这里选择Minimal ISO)。

安装Rocky Linux

选中RL-1,开启此虚拟机,选择「Install Rocky Linux 9.4」后回车。

「安装目标位置」选择「自定义」,点击「完成」。第1个boot分区(期望容量800M),第2个swap分区(期望容量4096M),第3个根分区(剩下的都给根分区),点击「完成」→「接受更改」。

「root密码」设置root密码,可勾选「允许root用户使用密码进行SSH登录」,点击「完成」,最后点击「开始安装」→「重启系统」。

Rocky Linux环境初始化

登录Rocky Linux,网卡配置(小的是第一块网卡):vi /etc/NetworkManager/system-connections/ens160.nmconnection,修改如下:

[ipv4]
method=manual
address1=192.168.141.11/24

重新加载网卡:

nmcli connection reload ens160
nmcli connection up ens160
# 查看IP地址
ip addr

之后就可以通过连接工具进行连接了,可以使用 WindTerm 终端工具。

替换yum源为上海交通大学:

sed -e 's|^mirrorlist=|#mirrorlist=|g' \
    -e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirror.sjtu.edu.cn/rocky|g' \
    -i.bak \
    /etc/yum.repos.d/[Rr]ocky*.repo

# 恢复
sed -e 's|^#mirrorlist=|mirrorlist=|g' \
    -e 's|^baseurl=https://mirror.sjtu.edu.cn/rocky|#baseurl=http://dl.rockylinux.org/$contentdir|g' \
    -i.bak \
    /etc/yum.repos.d/[Rr]ocky*.repo

创建缓存:dnf makecache

防火墙firewalld修改为iptables:

systemctl stop firewalld
systemctl disable firewalld

dnf -y install iptables-services
systemctl start iptables
# 查看默认规则
iptables -L
# 清空
iptables -F
# 持久化保存文件
service iptables save
# 开机自启
systemctl enable iptables

禁用SELinux:

# 临时关闭
setenforce 0
# 永久关闭
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
# 添加标记selinux=0
grubby --update-kernel ALL --args selinux=0

设置时区:timedatectl set-timezone Asia/Shanghai

关闭机器:shutdown -h now

右键RL-1,「快照」→「拍摄快照」,名称:just-install,点击「拍摄快照」。

安装Docker

# 加载bridge
dnf -y install epel-release
dnf -y install bridge-utils
# 加载br_netfilter模块
modprobe br_netfilter
echo 'br_netfilter' >> /etc/modules-load.d/bridge.conf
echo 'net.bridge.bridge-nf-call-iptables=1' >> /etc/sysctl.conf
echo 'net.bridge.bridge-nf-call-ip6tables=1' >> /etc/sysctl.conf
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
# 刷新生效
sysctl -p

# 添加docker-ce yum源
sudo dnf config-manager --add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
cd /etc/yum.repos.d
# 切换中科大源
sed -e 's|download.docker.com|mirrors.ustc.edu.cn/docker-ce|g' docker-ce.repo > docker-ce-ustc.repo
mv docker-ce.repo docker-ce.repo.back

# 安装docker-ce
dnf -y install docker-ce

# 配置daemon
cat > /etc/docker/daemon.json <<EOF
{
  "default-ipc-mode": "shareable",
  "data-root": "/data/docker",
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "100"
  },
  "insecure-registries": ["harbor.xinxainghf.com"],
  "registry-mirrors": ["https://dfp63jaj.mirror.aliyuncs.com"]
}
EOF

# 创建docker service管理目录
mkdir -p /etc/systemd/system/docker.service.d

# 重启docker服务
systemctl daemon-reload && systemctl restart docker && systemctl enable docker

Kubernetes

简称K8s,因为k与s之间一共有8个字母,所以习惯称为K8s。

基于Docker模拟Pod

K8s网络

CNI插件通常聚焦在容器到容器的网络通信。CNI接口并不是指HTTP,gRPC这种接口,Kubernetes节点默认CNI插件路径为/opt/cni/bin。

Pod:容器组

Pause容器:

  • Pod 内部第一个启动的容器
  • 初始化网络栈
  • 挂载需要的存储卷
  • 回收僵尸进程
  1. 转载请保留原文链接:Kubernetes 学习笔记 https://aboss.top/post/832/
  2. 本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
  3. 本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。
  4. 本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。
  5. 联系方式(#替换成@):mail#aboss.top
相关推荐Kubernetes

    评论

    热门搜索