当前位置: 首页 > article >正文

安装k8s涉及命令(方便放到txt离线使用)

查看操作系统信息

uname -a  # 查看所有操作系统信息
uname -s  # 查看内核名称
uname -r  # 查看内核版本号
uname -m  # 查看机器硬件名称

cat /etc/os-release  # 查看所有操作系统信息

配置hosts
cat >> /etc/hosts << EOF
172.171.16.147 crawler-k8s-master
172.171.16.148 crawler-k8s-node1
172.171.16.149 crawler-k8s-node2
EOF

关闭防火墙
systemctl stop firewalld
systemctl disable firewalld


关闭selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config  #永久
setenforce 0  #临时

关闭swap
sed -ri 's/.*swap.*/#&/' /etc/fstab #永久
swapoff -a #临时

关闭dnsmasq
service dnsmasq stop 
systemctl disable dnsmaq


系统参数设置

mkdir /etc/sysctl.d

vim /etc/sysctl.d/kubernetes.conf

net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
vm.swappiness=0
vm.overcommit_memory = 1
vm.panic_on_oom = 0
fs.inotify.max_user_watches = 89100

sysctl -p /etc/sysctl.d/kubernetes.conf
/加载网桥过滤模块
modprobe  br_netfilter
然后再次  
sysctl -p /etc/sysctl.d/kubernetes.conf

配置ipvs功能(所有节点)
在kubernetes中service有两种代理模型,一种是基于iptables的,一种是基于ipvs的
两者比较的话,ipvs的性能明显要高一些,但是如果要使用它,需要手动载入ipvs模块

//添加需要加载的模块写入脚本文件

vim /etc/sysconfig/modules/ipvs.modules

#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4

//为脚本文件添加执行权限

chmod +x /etc/sysconfig/modules/ipvs.modules

//执行脚本文件

/bin/bash /etc/sysconfig/modules/ipvs.modules
备注:如果报错可能是需要将 modprobe -- nf_conntrack_ipv4  改为modprobe -- nf_conntrack

安装docker

卸载原有的
yum remove docker docker-client  docker-client-latest  docker-common docker-latest  docker-latest-logrotate docker-logrotate docker-engine

tar xf docker-20.10.9.tgz
mv docker/* /usr/bin/

vim /usr/lib/systemd/system/docker.service

[Unit]
 
Description=Docker Application Container Engine
 
Documentation=https://docs.docker.com
 
After=network-online.target firewalld.service
 
Wants=network-online.target
 
[Service]
 
Type=notify
 
ExecStart=/usr/bin/dockerd
 
ExecReload=/bin/kill -s HUP $MAINPID
 
LimitNOFILE=infinity
 
LimitNPROC=infinity
 
TimeoutStartSec=0
 
Delegate=yes
 
KillMode=process
 
Restart=on-failure
 
StartLimitBurst=3
 
StartLimitInterval=60s
 
[Install]
 
WantedBy=multi-user.target


启动
systemctl start docker & systemctl enable docker


 配置cgroupd
vim /etc/docker/daemon.json

{
          "exec-opts": ["native.cgroupdriver=systemd"]
}

//设置开机启动
 
systemctl start docker
 
systemctl enable docker
 
//重启docker
 
systemctl daemon-reload
 
systemctl restart docker


安装k8s

安装k8s相关包
rpm -ivh *.rpm

启动
systemctl start kubelet && systemctl enable kubelet

load所有镜像文件
find /home/k8s-images -name "*.tar" -exec docker load -i {} \;

安装master
kubeadm init --apiserver-advertise-address=172.171.16.88 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.23.7 --service-cidr=10.96.0.0/16 --pod-network-cidr=10.244.0.0/16


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


安装node

kubeadm join 172.171.16.147:6443 --token i4dp7i.7t1j8ezmgwkj1gio \
    --discovery-token-ca-cert-hash sha256:9fb74686ff3bea5769e5ed466dbb2c32ed3fc920374ff2175b39b8162ac27f8f

配置calico
grep image calico.yaml
 
sed -i 's#docker.io/##g' calico.yaml

kubectl apply -f calico.yaml
 


http://www.kler.cn/a/451985.html

相关文章:

  • 面经zhenyq
  • Docker数据库的主从复制
  • 云手机+YouTube:改变通信世界的划时代技术
  • 决策树(理论知识3)
  • 14:30面试,14:08就出来了,面试问的有点变态呀。。。
  • 《软件设计的哲学》阅读摘要之设计原则
  • 常见设计原则
  • 如何解决 Apache 中 “CORS no allow credentials” 错误 ?
  • 由于这些关键原因,我总是手边有一台虚拟机
  • 微信小程序用户信息解密 AES/CBC/NoPadding 解密失败问题
  • Linux环境下使用tomcat+nginx部署若依项目
  • --spring.profiles.active=prod
  • 100V宽压输入反激隔离电源,适用于N道沟MOSFET或GaN或5V栅极驱动器,无需光耦合
  • 全国硕士研究生入学考试(考研)备考要点之具体科目
  • 如何系统全面地自学Java语言?
  • 【工具变量】山水工程试点政策DID(2000-2023年)
  • 机器学习DAY4续:梯度提升与 XGBoost (完)
  • lua-debug for Sublime
  • Flink定时器
  • 嵌入式学习-QT-Day08
  • Word窗体联动Excel实现级联组合框
  • 机试题——最大时间
  • STM32单片机芯片与内部41 DAC TIM触发双DAC DMA搬运同步输出正弦波
  • Matrix-Breakout 2 Morpheus
  • 使用vcpkg安装opencv>=4.9后#include<opencv2/opencv.hpp>#include<opencv2/core.hpp>无效
  • C语言-09内存管理