k8s部署(centos7)

k8s部署(centos7)
Kubernetes简介及Aliyun环境部署(V1.21.2)
centos7 kubernetes(k8s)1.12集群部署与使用(四):Node节点部署
Redhat 7安装docker缺少包fuse-overlayfs解决方法
Kubernetes集群搭建超详细总结(CentOS版)
使用 Rancher 部署 k8s 集群
aliyun镜像加速器
https://9oggfmz6.mirror.aliyuncs.com

centos7.8使用kubeadm创建kubernetes集群–> 完整版
Centos7安装K8S
kubernetes安装(国内网络+阿里云)

  1. 关闭防火墙
    systemctl stop firewalld
    systemctl disable firewalld

  2. 关闭 selinux(2,3根据自己情况选择哈)将 SELinux 设置为 permissive 模式(相当于将其禁用)
    sudo setenforce 0
    sudo sed -i ‘s/^SELINUX=enforcing$/SELINUX=permissive/’ /etc/selinux/config

  3. 关闭 swap
    swapoff -a # 临时关闭
    vim /etc/fstab # 永久关闭
    #注释掉 /dev/mapper/centos-swap swap swap defaults 0 0 这行
    systemctl reboot #重启生效
    free ‐m #查看下swap交换区是否都为0,如果都为0则swap关闭成功

  4. 给三台机器分别设置主机名
    hostnamectl set‐hostname 主机名称
    第一台:k8s-master 第二台:k8s-node1 第三台:k8s-node2
    cat >> /etc/hosts << EOF
    192.168.2.64 k8s-master
    192.168.2.59 k8s-node1
    192.168.2.51 k8s-node2
    EOF

  5. 将桥接的IPv4流量传递到iptables

cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

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
  1. 设置时间
    yum install ntpdate -y
    ntpdate -u ntp.api.bz

  2. 清理过往版本docker

 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  1. 安装docker依赖:
    yum install -y yum-utils device-mapper-persistent-data lvm2
  2. 添加阿里的docker源:
    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  3. 安装18.09.6版本的docker:
    k8s和docker版本是有兼容问题的,尝试安装最新的docker 有点问题。
    yum list docker-ce --showduplicates | sort -r | grep 18.09.6
  4. 启动docker并创建开机自启动:
    systemctl restart docker && systemctl enable docker
  5. 安装 bash-completion 后,可用tab键补齐几乎任何内容,包括参数、文件、目录甚至包名等.
    yum -y install bash-completion
    source /etc/profile.d/bash_completion.sh #使其生效
  6. 配置镜像加速:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{

  "registry-mirrors": ["https://4z7jtuuf.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"]   #更改docker驱动为systemd
}
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker
[root@k8s-master01 ~]# cat /etc/docker/daemon.json
{
  "insecure-registries": ["10.185.16.62"]
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {"max-size": "100m"},
  "registry-mirrors": ["https://dca8zh55.mirror.aliyuncs.com"]
}
  1. 安装docker
sudo yum install -y yum-utils
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum install docker-ce docker-ce-cli containerd.io -y
sudo systemctl start docker
sudo systemctl enable docker
sudo systemctl status docker
  1. 修改docker驱动
    执行kubeadm init集群初始化时遇到:

[WARNING IsDockerSystemdCheck]: detected “cgroupfs” as the Docker
cgroup driver. The recommended driver is “systemd”.

[警告IsDockerSystemdCheck]:检测到“cgroupfs”作为Docker cgroup驱动程序。
推荐的驱动程序是“systemd”
#新增配置文件

cat  >> /etc/docker/daemon.json << EOF
{
 "exec-opts":["native.cgroupdriver=systemd"]
}
EOF

#重启docker
systemctl restart docker
systemctl status docker
8. yum源切换与yum k8s
#https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
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
setenforce 0
sudo yum update -y #针对修改repo_gpgcheck=0
# sudo yum install -y kubelet-1.19.4 kubeadm-1.19.4 kubectl-1.19.4 #可以根据github发布版本,指定
# sudo yum install -y kubelet-1.20.0 kubeadm-1.20.0 kubectl-1.20.0 #可以根据github发布版本,指定
sudo  yum install -y kubelet kubeadm kubectl #最好不要指定版本,默认更新为最新
sudo systemctl enable --now kubelet
sudo systemctl start kubelet
#sudo systemctl status kubelet 此时kubelet还没有正常准备,待kubeadm init后master节点会ok,将node节点join添加后kubelet也会正常

配置阿里云kubernetes软件源
报错:[Errno -1] repomd.xml signature could not be verified for kubernetes Trying other mirror.
解决:https://github.com/kubernetes/kubernetes/issues/60134
处理:repo_gpgcheck=0

yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
  1. 检查工具安装
yum list installed | grep kubelet
yum list installed | grep kubeadm
yum list installed | grep kubectl

kubeadm创建集群
此处需要注意(9、10)均在k8s-master机器上执行指令
ip为master的ip地址,其次注意版本,剩下的无需改动
17. 初始化

# 前提是cpu需要2核以上,内存ram需要2G以上(1700M以上)
kubeadm init --apiserver-advertise-address=192.168.2.64 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.23.0 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16

报错:
containerd 1.4.9 Unimplemented desc = unknown service runtime.v1alpha2.RuntimeService

cat <<EOF > /etc/containerd/config.toml
[plugins."io.containerd.grpc.v1.cri"]
  systemd_cgroup = true
EOF
systemctl restart containerd

此处如果执行失败,可能master的IP填写错误或者未填写 --apiserver-advertise-address 172.28.12.148,重新执行以上命令kubeadm init
此处如果执行失败,可能是磁盘或者内存或者cpu资源不够

kubeadm reset
  1. 配置 kubectl 命令工具
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

问题“The connection to the server…:6443 was refused - did you specify the right host or port?”的处理!

master安装完成,可使用一下命令查看configmap列表以验证。

kubectl -n kube-system get configmap
  1. yum针对软件包操作常用命令:
    1.使用YUM查找软件包
    命令:yum search
    2.列出所有可安装的软件包
    命令:yum list
    3.列出所有可更新的软件包
    命令:yum list updates
    4.列出所有已安装的软件包
    命令:yum list installed
    5.列出所有已安装但不在 Yum Repository 内的软件包
    命令:yum list extras
    6.使用YUM获取软件包信息
    命令:yum info
    7.列出所有可更新的软件包信息
    命令:yum info updates
    8.列出所有已安装的软件包信息
    命令:yum info installed
    9.列出所有已安装但不在 Yum Repository 内的软件包信息
    命令:yum info extras
    10.列出软件包提供哪些文件
    命令:yum provides
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于在CentOS 7上部署Kubernetesk8s),可以按照以下步骤进行安装: 1. 首先,确保你的CentOS 7系统是最新的,并且具备互联网连接。 2. 安装DockerKubernetes需要使用Docker作为容器运行时。可以通过以下命令来安装Docker: ``` sudo yum install -y docker sudo systemctl start docker sudo systemctl enable docker ``` 3. 安装kubeadm、kubelet和kubectl:这些是Kubernetes的核心组件。可以通过以下命令来安装: ``` sudo yum install -y kubelet kubeadm kubectl sudo systemctl enable kubelet ``` 4. 关闭SELinux:Kubernetes在CentOS上需要禁用SELinux。可以通过编辑`/etc/selinux/config`文件并将`SELINUX=enforcing`改为`SELINUX=disabled`来关闭SELinux。然后,重新启动系统。 5. 配置Kubernetes Master节点:选择一个主机作为Kubernetes Master节点,并执行以下命令: ``` sudo kubeadm init --pod-network-cidr=10.244.0.0/16 ``` 6. 设置Kubernetes配置:在完成上一步后,将会显示一些关于配置Kubernetes集群的命令。请按照提示将这些命令复制并在Terminal中执行。 7. 安装网络插件:Kubernetes需要一个网络插件来为容器提供网络功能。常用的网络插件有Flannel、Calico等。选择一个适合你的网络插件,并按照其文档进行安装。 8. 加入Worker节点:如果你想将其他主机加入到Kubernetes集群中作为Worker节点,可以使用在Master节点初始化时显示的`kubeadm join`命令。 完成上述步骤后,你就成功在CentOS 7上部署了一个基本的Kubernetes集群。你可以使用`kubectl`命令来管理和操作你的集群。务必参考官方文档和相关教程以获取更多详细信息和最佳实践。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值