kubeadm开快速的搭建一个k8s集群

kubeadm开快速的搭建一个k8s集群

二进制适合大集群,50台以上主机

kubeadm更适合中小企业的业务集群。

master节点 20.0.0.92 docker kubelet kubeadm kubectl flannel

node1 20.0.0. 94 docker kubelet kubeadm kubectl flanne

node2 20.0.0.03 docker kubelet kubeadm kubectl flanne

harbor 20.0.0.95 docker docker-compose harbor

systemctl stop firewalld systemctl disable firewalld setenforce 0 sed -i 's/enforcing/disabled/' /etc/selinux/config iptables -F && iptables -t nat -F && iptables -t mangle -F && iptables -X swapoff -a

hostnamectl set-hostname master01 hostnamectl set-hostname node01 hostnamectl set-hostname node02

sysctl --system

所有节点安装docker yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum install -y docker-ce docker-ce-cli containerd.

所有节点安装kubeadm,kubelet和kubectl //定义kubernetes源 cat > /etc/yum.repos.d/kubernetes.repo << EOF [kubernetes] name=Kubernetes baseurl=kubernetes-yum-repos-kubernetes-el7-x86_64安装包下载_开源镜像站-阿里云 enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF

yum install -y kubelet-1.20.15 kubeadm-1.20.15 kubectl-1.20.15 systemctl enable kubelet.service

kudeadm config images list --kubernetes-version 1.20.15

pause:特殊的podpause:会在节点上创建一个网络命名空间,其他容器可以加入这个网络命名空间pod里面的容器可能使用不同的代码和架构代码,可以在一个网络空间里面实现通信,协调这个命名里面的资源(实现pod内容器兼容性)kubeadm安装的k8s组件都是以pod的形式运行在kube-system这个命名空间当中kubeketnode管理器可以进行系统控制master 节点上传 v1.20.15.zip 压缩包至 /opt 目录
unzip v1.20.15.zip -d /opt/k8s
cd /opt/k8s/
for i in $(ls *.tar); do docker load -i $i; done[root@k8s1 ~]# kubeadm init \> --apiserver-advertise-address=192.168.233.91 \
> --image-repository registry.aliyuncs.com/google_containers \
> --kubernetes-version=v1.20.15 \
> --service-cidr=10.96.0.0/16 \
> --pod-network-cidr=10.244.0.0/16 \
> --token-ttl=0--apiserver -advertise-addre :声明master节点的apiserver的监听地址是--image-repository registry.aliyuncs.com/google_containers \:声明拉去镜像的仓库,使用阿里云--service-cidr=10.96.0.0/16 \ 所有sevice的对外代理地址都是10.96.0.0/16--pod-network-cidr=10.244.0.0/16 \ 所有pod的ip地址网段--token-ttl=0在node节点加入集群kubeadm join 20.0.0.92:6443 --token j7h4sa.yau6cfyzva2zk9ll \--discovery-token-ca-cert-hash sha256:13b961db6119c69691992ef0e33b46a97339290d6ff19d8effe00329e543d28f

mkdir -p $HOME/.kubecd /etc/kubernetescp admin.conf /root/.kube/configcd /root/.kubechown $(id -u):$(id -g) $HOME/.kube/configsystemctl restart kubeletkubectl edit cm kube-proxy -n=kube-system

systemctl restart kubeletkubectl get nodekubectl get csvim /etc/kubernetes/manifests/kube-controller-manager.yaml

vim /etc/kubernetes/manifests/kube-controller-manager.yaml             vim /etc/kubernetes/manifests/kube-controller-manager.yaml

systemctl restart kubelt

kubectl get cs

kubectl get pods -n kube-system

cd /opt docker load < flannel.tar

mv /opt/cni /opt/cni_bak mkdir -p /opt/cni/bin tar zxvf cni-plugins-linux-amd64-v0.8.6.tgz -C /opt/cni/bin

node01

docker load -i flannel.tar

mv /opt/cni /opt/cin_bak

mkdir -p /opt/cni/bin

tar zxvf 

./update-kubeadm-cert.sh all

5上

              vim harbor.yml

//生成证书
mkdir -p /data/cert
cd /data/cert
#生成私钥
openssl genrsa -des3 -out server.key 2048
输入两遍密码:123456

生成证书签名请求文件
openssl req -new -key server.key -out server.c

#备份私钥
cp server.key server.key.org

#清除私钥密码
openssl rsa -in server.key.org -out server.key
输入私钥密码:123456

cd /opt/harbor

./prepare

./install.sh

node01

mdkir -p /etc/docker/certs.d/hub.test.com

在harbor主机上

scp -r data/ root20.0.0.93:/

scp -r data/ root20.0.0.94:/

在node01和node02

cp server.crt server.csr server.key /etc/docker/hun.com.test

在harbor上

vim /etc/hosts 192.168.233.94 hub.test.com

vim /lib/systemd/system/docker.service

systemctl daemon-reload

systemctl restart docker

在node节点上

docker login -u admin -p 123456 https://hub.test.com

docker tag nginx:latest hub.test.com/library/nginx:v1

docker push hub.test.com/library/nginx:v1

在master节点上删除之前创建的nginx资源
kubectl delete deployment myapp-test

kubectl create deployment myapp-test  --image=hub.test.com/library/nginx:v1 --port=80 --replicas=3
kubectl expose deployment myapp1-test  --port=30000 --target-port=80

 部署 Dashboard

master01 节点上操作

vim recommended.yaml

kubectl apply -f recommended.yaml

#创建service account并绑定默认cluster-admin管理员集群角色
kubectl create serviceaccount dashboard-admin -n kube-system

kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin


#获取token值
kubectl describe secrets -n kube-system $(kubectl -n kube-system get secret | awk '/dashboard-admin/{print $1}')

#使用输出的token登录Dashboard
https://20.0.0.92:30001


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2660553.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

基于YOLOv8深度学习的45种交通标志智能检测与识别系统【python源码+Pyqt5界面+数据集+训练代码】目标检测、深度学习实战

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

cnPuTTY 0.80.0.1—PuTTY Release 0.80中文版本简单说明~~

2023-12-18 官方发布了PuTTY 0.80本次发布主要是针对Terrapin攻击(CVE-2023-48795)的修改发布。 更多详细的内容请查看PuTTY Change Log。 有关Terrapin攻击可用简单参考&#xff1a;警告&#xff01;&#xff01;&#xff01;Terrapin攻击(CVE-2023-48795)~~~ 为了缓解此漏洞…

mysql 与 支持语言的连接驱动 jdbc connector JAR 包

有位网友问我有没有 mysql jdbc驱动 &#xff0c;我刚开始一脸懵逼&#xff0c;后来明白过来&#xff0c;在网上找了几篇文章看看了解了解&#xff0c;得出如下解决办法&#xff1a; Mysql jdbc 下载&#xff1a; 网址&#xff1a; MySQL :: Download Connector/J 步骤1 &a…

AWS SSM中切换AWS不同的profile

问题 在自己的开发笔记本上面&#xff0c;通过AWS SSM方式访问EC2服务&#xff0c;只需要通过简单的命令就可以访问EC2了&#xff0c;如下&#xff1a; aws ssm start-session --target i-xxxx12350这个命令就是利用aws命令行工具中ssm提供的会话管理能力访问ec2服务&#xf…

Kafka学习笔记1(千峰教育)

Kafka学习笔记1&#xff08;千峰教育&#xff09; 一、为什么使用消息队列1.使用同步的通信方式来解决多个服务之间的通信2.使用异步的通信方式 二、消息队列的流派1.有broker2.无broker 三、Kafka的基本知识1.Kafk2a的安装2.Kafka中的一些基本概念3.创建topic4.发送消息5.消费…

【2023年中国高校大数据挑战赛 】赛题 B DNA 存储中的序列聚类与比对 Python实现

【2023年中国高校大数据挑战赛 】赛题 B DNA 存储中的序列聚类与比对 Python实现 1 题目 赛题 B DNA 存储中的序列聚类与比对 近年来&#xff0c;随着新互联网设备的大量涌入和对其服务需求的指数级增长&#xff0c;越来越多的数据信息被产生与收集。预计到 2021 年&#xf…

网络攻防中应该掌握的进阶工具udp2raw,通过raw socket给UDP包加上TCP或ICMP header,进而绕过UDP屏蔽或QoS

网络攻防中应该掌握的进阶工具udp2raw,通过raw socket给UDP包加上TCP或ICMP header,进而绕过UDP屏蔽或QoS。 udp2raw tunnel,通过raw socket给UDP包加上TCP或ICMP header,进而绕过UDP屏蔽或QoS,或在UDP不稳定的环境下提升稳定性。可以有效防止在使用kcptun或者finalspeed的…

Unreal Engine游戏引擎的优势

在现在这个繁荣的游戏开发行业中&#xff0c;选择合适的游戏引擎是非常重要的。其中&#xff0c;Unreal Engine作为一款功能强大的游戏引擎&#xff0c;在业界广受赞誉。那Unreal Engine游戏引擎究竟有哪些优势&#xff0c;带大家简单的了解一下。 图形渲染技术 Unreal Engin…

gnu工程的编译 - 以libiconv为例

文章目录 gnu工程的编译 - 以libiconv为例概述gnu官方源码包的发布版从官方的代码库直接迁出的git版源码如果安装了360, 需要添加开发相关的目录到信任区生成 configrue 的方法备注END gnu工程的编译 - 以libiconv为例 概述 gnu工程的下载分2种: gnu官方源码包的发布版 这种…

中文版大模型 Token 成本计算器

分享一个轻量的小工具&#xff0c;10MB 左右&#xff0c;能够帮助你直观的了解大模型 Token 的计算方法。 希望能够帮助到想了解或者正在规划模型 API 使用成本的你。 写在前面 之所以折腾这个小工具&#xff0c;是因为有朋友和我提问&#xff0c;大模型 API 的 Token 到底是…

托管在亚马逊云科技的向量数据库MyScale如何借助AWS基础设施构建稳定高效的云数据库

MyScale是一款完全托管于亚马逊云科技&#xff0c;支持SQL的高效向量数据库。MyScale的优势在于&#xff0c;它在提供与专用向量数据库相匹敌甚至优于的性能的同时&#xff0c;还支持完整的SQL语法。以下内容&#xff0c;将阐述MyScale是如何借助亚马逊云科技的基础设施&#x…

手机/平板实现电脑第三屏-记录极简

软件&#xff1a; 手机 平板 : moonlight 电脑&#xff1a; 1 KtzeAbyss/Easy-Virtual-Display 2 Parsec Virtual Display Driver https://builds.parsec.app/vdd/parsec-vdd-0.38.0.0.exe 3 LizardByte/Sunshine: Self-hosted game stream host for Moonlight. (gith…

第十四章 Sentinel实现熔断与限流

Sentinel实现熔断与限流 gitee&#xff1a;springcloud_study: springcloud&#xff1a;服务集群、注册中心、配置中心&#xff08;热更新&#xff09;、服务网关&#xff08;校验、路由、负载均衡&#xff09;、分布式缓存、分布式搜索、消息队列&#xff08;异步通信&#x…

OpenCV-Python(21):轮廓特征及周长、面积凸包检测和形状近似

2. 轮廓特征 轮廓特征是指由轮廓形状和结构衍生出来的一些特征参数。这些特征参数可以用于图像识别、目标检测和形状分析等应用中。常见的轮廓特征包括&#xff1a; 面积&#xff1a;轮廓所包围的区域的面积。周长&#xff1a;轮廓的周长&#xff0c;即轮廓线的长度。弧长&…

Linux 线程概念

文章目录 前言线程的概念线程的操作操作的原理补充与说明 前言 ① 函数的具体说明被放在补充与说明部分 ② 只说些基础概念和函数使用 线程的概念 网络回答&#xff1a;Linux 线程是指在 Linux 操作系统中创建和管理的轻量级执行单元。线程是进程的一部分&#xff0c;与进程…

Web漏洞—安全评估基础知识

一个安全评估的过程&#xff0c;可以简单地分为4个阶段:资产等级划分、威胁分析、风险分析、确认解决方案。 一般来说&#xff0c;按照这个过程来实施安全评估&#xff0c;在结果上不会出现较大的问题。这个实施的过程是层层递进的,前后之间有因果关系。 资产等级划分 资产等级…

【CSS3】第4章 CSS3选择器

学习目标 熟悉属性选择器的用法&#xff0c;了解不同属性选择器的功能。 掌握关系选择器的用法&#xff0c;能够使用关系选择器选取父标签中嵌套的子标签。 掌握结构化伪类选择器的用法&#xff0c;能够使用不同功能的结构化伪类选择器精准控制标签样式。 掌握状态化伪类选择…

HCIA-Datacom题库(自己整理分类的)——OSPF协议多选

ospf的hello报文功能是 邻居发现 同步路由器的LSDB 更新LSA信息 维持邻居关系 下列关于OSPF区域描述正确的是 在配置OSPF区域正确必须给路由器的loopback接配置IP地址 所有的网络都应在区域0中宣告 骨干区域的编号不能为2 区域的编号范围是从0.0.0.0到255.255.255.255…

边缘计算网关:在智慧储能系统中做好储能通信管家

背景 目前储能系统主要由储能单元和监控与调度管理单元组成&#xff0c;储能单元包含储能电池组(BA)、电池管理系统(BMS)、储能变流器(PCS)等&#xff1b;监控与调度管理单元包括中央控制系统(MGCC)、能量管理系统(EMS)等。 2021年8月&#xff0c;国家发改委发布《电化学储能…

新版ONENET的物联网环境调节系统(esp32+onenet+微信小程序)

新版ONENET的物联网环境调节系统&#xff08;esp32onenet微信小程序&#xff09; 好久没用onenet突然发现它大更新了&#xff0c;现在都是使用新版的物联网开放平台&#xff0c;只有老用户还有老版的多协议接入&#xff0c;新用户是没有的&#xff0c;所以我顺便更新一下新的开…