首页 > 其他分享 >k8s之集群部署(kubeadm)

k8s之集群部署(kubeadm)

时间:2023-10-05 23:11:30浏览次数:29  
标签:-- repo etc 集群 yum kubeadm k8s com docker

 

[master&node]

1.修改主机名

hostnamectl set-hostname master-01

cat >> /etc/hosts << EOF
172.28.32.1   master-01
172.28.32.2   worker-01
EOF

 

2.配置阿里云官方源

mkdir -p /etc/yum.repos.d/back
find /etc/yum.repos.d/ -type f -exec mv {} /etc/yum.repos.d/back/ \;
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo

 

3.关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

 

4.关闭交换分区和selinux

sed -i.bak '/swap/s/^/#/' /etc/fstab
sed -i 's/^ *SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

 

5.配置内核转发等相关参数

modprobe br_netfilter

cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

cat << EOF >> /etc/sysctl.conf
net.ipv4.ip_forward=1
EOF

chmod a+x /etc/rc.local
echo "source /etc/profile" >> /etc/rc.local
echo "modprobe br_netfilter" >> /etc/rc.local
echo "sysctl -p /etc/sysctl.d/k8s.conf" >> /etc/rc.local
echo "sysctl -p" >> //etc/rc.local

reboot    # 重启时因为需要重新检测selinux 的策略

 

6.安装Docker

yum -y install wget yum-utils device-mapper-persistent-data lvm2

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

yum list docker-ce --showduplicates | sort -r
yum remove docker-ce docker-ce-cli containerd.io
yum install -y docker-ce-20.10.8 docker-ce-cli-20.10.8 containerd.io

systemctl enable docker --now


# 这里设置cgroup 的类型为 systemd
cat > /etc/docker/daemon.json << EOF
{
  "registry-mirrors": ["https://2ywfua5b.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"]
}
EOF

systemctl daemon-reload
systemctl restart docker

 

7.安装kubelet, kubeadm, kubectl

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

yum remove kubeadm kubectl kubelet kubernetes-cni cri-tools socat
yum --showduplicates list kubeadm
yum -y install kubeadm-1.23.8 kubectl-1.23.8 kubelet-1.23.8
systemctl enable kubelet

 

[Master]

仅仅master上执行

kubeadm init --kubernetes-version=1.23.8 --apiserver-advertise-address=172.28.32.1 --pod-network-cidr=10.244.0.0/16 --image-repository registry.aliyuncs.com/google_containers

 

对集群做config认证

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

 

[Worker]

kubeadm join 172.28.32.1:6443 --token i2meul.73ipaykm3jc2k6vs --discovery-token-ca-cert-hash sha256:9e6d95ffc5ba78a5c71352ffcc9bca2330b17264ebc44facf6359b1ac153f33f

 

标签:--,repo,etc,集群,yum,kubeadm,k8s,com,docker
From: https://www.cnblogs.com/xingxia/p/k8s_kubeadm.html

相关文章

  • 离线安装Kubernetes(K8s)方法
    1简述1.1搭建方法介绍 K8s有两种搭建方式:1.使用K8s官方发布的二进制包搭建环境2.使用Kubeadm搭建(推荐该种方式) 本文的K8s搭建流程均基于Kubeadm方式1.2Kubeadm简介 Kubeadm是一款旨在为创建Kubernetes集群提供最佳实践“快速路径”的工具。它执行必要的操作,以用户......
  • 基于 K8S 搭建自己的 ELK 服务
    基于K8S(K3S)搭建自己的ELK服务对应的Yaml资源在https://github.com/nicelizhi/k8s-elkelasticsearch服务Servicekind:ServiceapiVersion:v1metadata:name:elasticsearchspec:ports:-name:elasticsearchprotocol:TCPport:9200......
  • k8s1.25安装
    环境初始化yuminstallbash-completionvimntpdateiptableslrzszepel-release-y&&execbashsystemctlstopfirewalldsystemctldisabledfirewalldsetenforce0sed-i's/=enforcing/=disabled/g'/etc/selinux/configdocker#step1:安......
  • k8s
    安装裸机安装失败,有点麻烦以后再尝试。运行一个名为testapp的pod:kubectlruntestapp--image=ccr.ccs.tencentyun.com/k8s-tutorial/test-k8s:v1kubectlgetpod使用配置文件运行pod,配置文件使用yaml编写:#pod.yamlapiVersion:v1kind:Podmetadata:name:test-p......
  • Redis哨兵集群原理
    单节点Redis的并发能力是有上限的,要进一步提高Redis的并发能力,就需要搭建主从集群,实现读写分离主节点:可以对Redis实现读写操作从节点: 只可以对Redis实现读操作但是,当master节点宕机后,我们就不能写数据到Redis,所以需要搭建一个三节点形成的Sentinel集群,来监管之前的Redis主从集......
  • 在k8s中使用secret存储敏感数据与四种用法
    当需要存储敏感数据时可以使用,secret会以密文的方式存储数据。创建secret的四种方法(1)通过--from-literal#每个--from-literal对应一个信息条目kubectlcreatesecretgenericmysecret--from-literal=username=admin--from-literal=password=123456(2)通过--from-file#每个文件内......
  • 高可用Kubernetes集群实战(二)
    安装containerd容器运行时[root@k8sm1~]#yuminstall-ycontainerd.io-1.6.6生成containerd配置文件创建配置文件存储目录[root@k8sm1~]#mkdir-p/etc/containerd生成配置文件[root@k8sm1~]#containerdconfigdefault>/etc/containerd/config.toml修改配置文件修改san......
  • 高可用Kubernetes集群实战(三)
    安装nginx安装依赖[root@k8sm1~]#yuminstall-yepel-release安装nginxkeepalived[root@k8sm1~]#yuminstall-ynginxkeepalivednginx-mod-stream配置nginx[root@k8sm1~]#cat/etc/nginx/nginx.conf#Formoreinformationonconfiguration,see:#*OfficialE......
  • Go每日一库之128:podinfo(k8s微服务模板)
    项目介绍官方Github:PodinfoPodinfo是一个用Go制作的小型web应用程序,它展示了在Kubernetes中运行微服务的最佳实践。它已实现的技术指标(截选自官方README.md):里面每一项技术指标的实现方式,其实都可以拿出来单独讲好久,相关理论也有好多。这里我只是讲针对这个项......
  • Redis主从及哨兵及集群相关介绍
    主从模式为了避免单点故障和读写不分离,Redis提供了复制(replication)功能,master数据库中的数据更新后,会自动将更新的数据同步到其他slave数据库上。优点:主从结构具有读写分离,提高效率、数据备份,提供多个副本等优点。不足:大的不足就是主从模式不具备自动容错和恢复功能,主......