首页 > 系统相关 >k8s 实战 Centos8.4 版本

k8s 实战 Centos8.4 版本

时间:2024-04-13 16:11:08浏览次数:20  
标签:实战 nmcli sudo Centos8.4 connection yum docker k8s con

网络 前置操作

nmcli con mod "Wired connection 1" ipv4.addresses 192.168.0.201/24 # 设置IP地址
nmcli con mod "Wired connection 1" ipv4.gateway 192.168.0.1 # 设置网关
nmcli con mod "Wired connection 1" ipv4.method manual # 设置静态IP
nmcli con mod "Wired connection 1" ipv4.dns "8.8.8.8, 8.8.4.4" # 设置DNS
nmcli con down "Wired connection 1" # 关闭网络连接
nmcli con up "Wired connection 1" # 打开网络连接

nmcli con mod "Wired connection 1" connection.id ens160 # 给设备重新命名
nmcli con show # 查看网络连接
systemctl restart NetworkManager # 重启网络服务

docker 前置操作

os version: CentOs 8.4
执行以下脚本前,默认已完成如下准备:

  1. 你的网络配置ok,可以访问外网
  2. 当前用户在wheel组中,拥有了sudo权限(如果没有则执行:usermod -aG lgw wheel or usermod -aG wheel lgw,然后退出从新登陆)
docker_ce_v=docker-ce-20.10.8
docker_ce_cli_v=docker-ce-cli-20.10.8
kubeadm_v=kubeadm-1.22.0
kubelet_v=kubelet-1.22.0
kubectl_v=kubectl-1.22.0
IPADDR=192.168.56.101
# 删除掉可能影响安装的docker
sudo yum remove -y docker docker-client docker-client-latest dockercommon docker-latest docker-latest-logrotate docker-logrotate docker-engine buildah podman

# 设置网络环境
# vim  /etc/environment
# http_proxy="xxx"
# https_proxy="xxx"
# no_proxy="xxx"

# 添加yum仓库
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
yum makecache  # 更新到缓存

# 添加docker的repo源
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install -y $docker_ce_v $docker_ce_cli_v containerd.io

# 设置代理
# vim /etc/systemd/system/docker.service.d
# ...

sudo mkdir /etc/docker
sudo touch /etc/docker/daemon.json
sudo chmod a+w /etc/docker/daemon.json  # all user to write permision
sudo cat > /etc/docker/daemon.json<<EOF
{
  "registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://r1xsqnzk.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl enable docker  # 设置开机自启动
sudo usermod -aG docker $USER  # 将用户追加到docker附加组中(类似于 Django 的多对多关系设置)
# su - # 刷新当前环境
# sudo gpasswd -a lgw docker # 将用户切换到docker组

echo "Start install kubernetes"

sudo cat <<EOF |sudo tee /etc/yum.repos.d/kubernetes.repo
[k8s]
name=k8s
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

sudo yum install $kubeadm_v $kubectl_v $kubelet_v -y
sudo systemctl enable kubelet

# 关闭swapoff分区
sudo swapoff -a
sudo sysctl -w vm.swappiness=0
sudo sed -i 's/.*swap.*/#&/' /etc/fstab

sudo setenforce 0
sudo sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

sudo systemctl stop firewalld
sudo systemctl disable firewalld

# 如果出错,根据错误提示,匹配这里的方案:https://github.com/kubernetes/kubeadm/issues/1893
# apiserver-advertise-address 填写你的局域网ip
sudo kubeadm init --kubernetes-version=1.22.0  \
--apiserver-advertise-address=$IPADDR \
--image-repository registry.aliyuncs.com/google_containers  \
--service-cidr=10.10.0.0/16 --pod-network-cidr=10.122.0.0/16

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

echo "source < (kubectl completion bash)" >> ~/.bashrc
source ~/.bashrc & /dev/null

kubectl apply -f ./kube-flannel.yml
# 这里不要sudo,否则会报错:`The connection to the server localhost:8080 was refused - did you specify the right host or port?`
# [下载失败,用这里的内容]:(https://www.cnblogs.com/li-gao-wang/p/15450668.html)

sudo usermod -aG docker $USER  # 给当前用于追加附加组, a 是追加,G 是修改用户所属的附加群组

other_sh

kubeadm token create --print-join-command  # node节点join时的token值

标签:实战,nmcli,sudo,Centos8.4,connection,yum,docker,k8s,con
From: https://www.cnblogs.com/li-gao-wang/p/15435685.html

相关文章

  • Python量化交易系统实战--计算交易指标
     作者:麦克煎蛋  出处:https://www.cnblogs.com/mazhiyong/转载请保留这段声明,谢谢! 本节主要包括以下内容:1、计算涨跌幅使用shift函数计算涨跌幅defcalculate_change_pct(data):"""涨跌幅=(当期收盘价-前期收盘价)/前期收盘价:paramdata:datafram......
  • Python+FastJson漏洞批量检测实战
    #-*-coding:utf-8-*-importosimportsubprocess#指定要读取文件的目录directory='D:/gongju02/anq/FastJson/JsonExp-1.4.0'defjson_exp(text_path):"""指定要检测的接口文件目录"""try:#改变当前工作目录os.chdir(di......
  • Python量化交易系统实战--获取股票数据
     我们首先需要获取股票数据。代码IDE选择:PyCharm计算机环境:MacOS  一、获取股票数据的三种方式 二、获取股票数据这里选定的是使用JoinQuant平台提供的免费接口(有时间范围限制),简单整理如下。使用前需要先申请权限并初始化授权:fromjqdatasdkimport*auth('','......
  • FastJson反序列化漏洞利用和扫描探测工具-实战
    一、简介fastjson漏洞批量检测工具,根据现有payload,检测目标是否存在fastjson或jackson漏洞(工具仅用于检测漏洞),若存在漏洞,可根据对应payload进行后渗透利用,若出现新的漏洞时,可将最新的payload新增至txt中(需修改格式),工具完全替代手工检测,作为辅助工具使用。二、LDAP检测环境搭建......
  • 鸿蒙HarmonyOS实战-ArkUI组件(页面路由)
    ......
  • 肖sir_jmeter之性能实战(16.2)
    jmeter之性能实战=-=============================一、单接口的性能测试添加一个接口:案例:登录接口:url:POSThttp://cms.duoceshi.cn/cms/manage/loginJump.doPOSTdata:userAccount=admin&loginPwd=123456 1、调通登录接口  2、添加查看结果树和聚合报告  3、......
  • 掌握 xUnit 单元测试中的 Mock 与 Stub 实战
    引言上一章节介绍了TDD的三大法则,今天我们讲一下在单元测试中模拟对象的使用。FakeFake-Fake是一个通用术语,可用于描述stub或mock对象。它是stub还是mock取决于使用它的上下文。也就是说,Fake可以是stub或mockMock-Mock对象是系统中的fake对象,用于......
  • Kubernetes Pod配置:从基础到高级实战技巧
    本文深入探讨了KubernetesPod配置的实战技巧和常见易错点。关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营......
  • 掌握 xUnit 单元测试中的 Mock 与 Stub 实战
    引言上一章节介绍了TDD的三大法则,今天我们讲一下在单元测试中模拟对象的使用。FakeFake-Fake是一个通用术语,可用于描述stub或mock对象。它是stub还是mock取决于使用它的上下文。也就是说,Fake可以是stub或mockMock-Mock对象是系统中的fake对象,用于确......
  • 鸿蒙HarmonyOS实战-ArkUI组件(Menu)
    ......