k8s 1.28 集群部署
文章目录
- 环境配置
- 安装docker
- 安装cri-dockerd(Docker与Kubernetes通信的中间程序):
- 部署kubernetes
环境配置
- 关闭Selinux
#永久
sed -i 's/enforcing/disabled/' /etc/selinux/config
#临时
setenforce 0
- 关闭Swap
#临时
swapoff-a
#永久
sed -ri 's/.*swap.*/#&/ /etc/fstab
- 根据规划设置主机名
hostnamectl set-hostname <hostname>
- 确保网络桥接的数据包经过Iptables处理,启用相关的内核参数
cat /etc/sysctl.d/k8s.conf << EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
- 生效
sysctl --system
安装docker
- 配置阿里云源地址,安装并启动docker-ce
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -0 /etc/yum.repos.d/docker-ce.repoyum -y install docker-ce
systemct1 enable docker && systemct1 start docker
- 配置镜像下载加速器和设置Cgroup驱动
cat > /etc/docker/daemon.json << EOF
{"registry-mirrors":["https://b9pmyelo.mirror.aliyuncs.com"],"exec-opts":["native.cgroupdriver=systemd"]
}
EOFsystemctl restart docker
docker info
安装cri-dockerd(Docker与Kubernetes通信的中间程序):
#下载
wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.2/cri-dockerd-0.3.2-3.el7.x86_64.rpm
#安装
rpm -ivh cri-dockerd-0.3.2-3.el7.x86_64.rpm
指定依赖镜像地址为国内镜像地址
vi /usr/lib/systemd/system/cri-docker.service
Execstart=/usr/bin/cri-dockerd --container-runtime-endpoint fd:// --pod-infra-container-image=registry.aliyuncs.com/google containers/pause:3.9
重载systemd配置
systemctl daemon-reload
启动并设置开机自启 ci-docker
systemctl enable cri-docker &systemctl start cri-docker
部署kubernetes
- 添加阿里云YUM软件源
cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/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
- 安装kubeadm,kubelet和kubect1,kubect1(可以只安装在master节点中)
yum install -y kubelet-1.28.0 kubeadm-1.28.0 kubect1-1.28.0# 这里只是设置开机自启,后面由kubeadm初始化后并自启
systemctl enable kubelet
- 初始化Master节点
kubeadm init \
--apiserver-advertise-address=192.168.1.71 \ #声明监听的ip地址,与主机IP地址一致
--image-repository registry.aliyuncs.com/google_containers \ #默认为国外镜像,这里指定阿里云的镜像仓库
--kubernetes-version v1.28.0 \ #指定k8s部署的版本
--service-cidr=10.96.0.0/12 \ #指定Service网段
--pod-network-cidr=10.244.0.0/16 \ #指定pod网段
--cri-socket=unix:///var/run/cri-dockerd.sock #指定连接docker的中间程序的Socket
成功显示:
Your Kubernetes control-plane has initialized successfully!
初始化完成后,根据提示信息,拷贝kubect1工具认证文件到默认路径:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
使用kubectl工具查看节点状态:
kubectl get node
- 在node子节点执行下方命令,并指定连接docker的中间程序的Socket,加入到master节点中
kubeadm join 192.168.1.71:6443 --token 5dh8w8.o2d1vbrqk3x1w93h \
--discovery-token-ca-cert-hash sha256:45f1185c31b9c074f87be118950019a839c31acf0ec48a1581833a540058d144 --cri-socket=unix:///var/run/cri-dockerd.sock
使用kubectl工具查看节点状态:
kubectl get node
注:由于网络插件还没有部署,节点会处于“NotReady”状态。
- 安装网络组件(master节点执行)
这里使用Calico作为Kubernetes的网络插件,负责集群中网络通信。
创建Calico网络组件的资源(master节点执行):
kubectl create -f tigera-operator.yaml
kubectl create -f custom-resources.yaml
查看Calico相关Pod的运行状态(需要下载镜像,等待5分钟左右)
kubectl get pods -n calico-system
注:如果Pod处于“ContainerCreating”状态说明在下载镜像中,需耐心等待,所有的pod状态为running时,代表安装成功
- 安装Dashboard(master节点执行)
Dashboard是官方提供的一个UI,可用于基本管理K8s资源。
kubectl apply -f kubernetes-dashboard.yaml
查看状态
kubectl get pods -n kubernetes-dashboard
注:如果Pod处于“ContainerCreating”状态说明在下载镜像中,需耐心等待,所有的pod状态为running时,代表安装成功
浏览器访问“https://节点IP地址:30001”,将看到Dashboard登录界面。
创建服务账号并授权管理员权限:
#创建用户
kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard#用户授权
kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin#获取用户Token
kubectl cre 0ate token dashboard-admin -n kubernetes-dashboard
使用输出的Token登录Dashboard,将进入到首页
相关文章:

k8s 1.28 集群部署
文章目录 环境配置安装docker安装cri-dockerd(Docker与Kubernetes通信的中间程序): 部署kubernetes 环境配置 关闭Selinux #永久 sed -i s/enforcing/disabled/ /etc/selinux/config #临时 setenforce 0 关闭Swap #临时 swapoff-a #永久 sed -ri s/.*swap.*/#&a…...

python入门教程
Python 是一种非常流行的编程语言,因其简单易学的语法和广泛的应用领域(如数据分析、人工智能、Web 开发等)而备受欢迎。以下是一个入门级 Python 教程,适合初学者快速掌握 Python 的基础知识。 1. 安装 Python 你可以从 Python…...

bat(批处理脚本学习)
输出banner echo off echo () echo JL echo ^|^| echo LJ echo _,--"""""""---. echo , …...

【JAVA毕业设计】基于Vue和SpringBoot的渔具租赁系统
本文项目编号 T 005 ,文末自助获取源码 \color{red}{T005,文末自助获取源码} T005,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 渔…...

Maven和Gradle的对比
Maven和Gradle都是Java项目构建工具,它们在帮助开发者管理项目依赖、编译、打包等方面发挥着重要作用。 Maven和Gradle的区别 1、语法与配置文件 Maven使用XML作为配置文件(如pom.xml)的语言,XML结构清晰但相对冗长。Gradle则使…...

Windows安装Ollama环境
在Windows环境下,可以安装Ollama,然后在其上面下载相应的大语言模式,下面是目前支持的LLM及相应的命令等信息: Model Parameters Size Download Llama 38B4.7GBollama run llama3Llama 370B40GBollama run llama3:70bPhi-33.8B2.3GBollama run phi3Mistral7B4.1GBollama ru…...

Java入门:11.抽象类,接口,instanceof,类关系,克隆
1 JDK中的包 JDK JRE 开发工具集(javac.exe) JRE JVM java类库 JVM java 虚拟机 jdk中自带了许多的包(类) , 常用的有 java.lang 该包中的类,不需要引用,可以直接使用。 例如࿱…...

【软件部署安装】OpenOffice转换PDF字体乱码
现象与原因分析 执行fc-list查看系统字体 经分析发现,linux默认不带中文字体,因此打开我们本地的windows系统的TTF、TTC字体安装到centos机器上。 安装字体 将Windows的路径: C:\Windows\Fonts 的中文字体,如扩展名为 TTC 与TT…...

工程师 - 开源硬件公司Adafruit介绍
https://www.adafruit.com/ https://github.com/adafruit 开源硬件公司 Adafruit 的发展历程 如果你是一名创客(Maker),那么你肯定听过 Adafruit;如果你在项目中使用过 Arduino,那么你应该也会知道 Adafruit。假如你没…...

PostgreSQL学习笔记五:数据库基本操作
在 PostgreSQL 中,您可以执行一系列基础操作来管理数据库、备份和恢复数据。以下是一些常用的命令和步骤: 创建数据库 使用以下命令创建新数据库: CREATE DATABASE database_name;您也可以在创建时指定数据库所有者和其他参数:…...

住房公积金 计算器-java方法
计算了一下房贷压力,以全额公积金贷款为例,贷款四十万,等额本金方式还款,房贷利率为2.85%,基本情况就是如下: 还款总额达到 提前还款的好处 按三十年计算,如果第一年借用亲朋好友的钱&#x…...

Spring-Smart-DI
参考文章 作用 用注解的方式动态切换实现类实现方式。 比如我们有多个消息中间件或多个短信服务商,需要动态切换的时候,无需自己写判断逻辑来进行服务商的切换。只用一套注解就可以解决问题 开始使用 引入依赖 <dependency><groupId>io…...

Python 在树莓派上实现WIFI连接
开发语言:Python 硬件环境:树莓派 4B 运行环境:Raspberry Pi OS 64-bit 连接WIFI还是比较简单的,用了好几个Python 库都效果不怎么理想,最后还是使用命令的方式是最自在的 先断开当前的连接 wlan0 可以替换成你当前…...

vmware下ubuntu18.04中使用笔记本的摄像头
步骤1:在windows中检查相机状态 win10系统中,在左下的搜索栏,搜索“相机”,点击进入即可打开相机,并正常显示图像。 注意:如果相机连接到了虚拟机,则不能显示正常。 步骤2:…...

【Linux】最基本的杂项设备驱动
MISC驱动简介 misc的意思是混合、杂项的,因此misc驱动也叫杂项驱动。当我们板子上的某些外设无法进行分类的时候就可以使用该项驱动。 所有杂项设备都共用一个主设备号(10),不同的子杂项设备使用不同的子设备号。 重要接口 定…...

RadioGroup RadioButton底部导航栏
参考: https://blog.csdn.net/lu202032/article/details/117632709 activity_home.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://sch…...

SQL分类中的DQL
DQL(Data Query Language):数据查询语言,用来查询数据库中表的记录。 一、DQL语法 编写顺序 执行顺序 SELECT 字段列表 5 FROM 表名列表 1 WHERE 条件列表 2 GROUP BY 分组字段列表 3 HAVING 分组后条件列表 4 ORDER BY 排…...

1.3.ReactOS系统 PAGED_CODE 宏函数的实现
#ReactOS系统 PAGED_CODE 宏函数的实现 ReactOS系统 PAGED_CODE 宏函数的实现 文章目录 PAGED_CODE 宏函数的实现 PAGED_CODE 宏函数的实现 #ifdef DBG#define PAGED_CODE() \if (VideoPortGetCurrentIrql() > 1 /* APC_LEVEL */) \{ \VideoPortDebugPrint(Error, "V…...

【论文速看】DL最新进展20241015-目标检测、图像超分
目录 【目标检测】【图像超分】 【目标检测】 [ECCV2024] LaMI-DETR: Open-Vocabulary Detection with Language Model Instruction 论文链接:https://arxiv.org/pdf/2407.11335 代码链接:https://github.com/eternaldolphin/LaMI-DETR 现有方法通过利…...

京准电钟:NTP时间服务器让大数据时钟同步
京准电钟:NTP时间服务器让大数据时钟同步 京准电钟:NTP时间服务器让大数据时钟同步 NTP是一种用于同步网络中设备时间的协议,广泛用于互联网和局域网中。NTP网络时间服务器则是基于NTP协议构建,为网络中的设备提供时间同步服务的服…...

SSL免费证书申请(七牛云/阿里云等)
最近运维的几个项目SSL证书要过期了,领导一直催促着要搞,然后也是在网上找了各种链接、各种方式(谨防上当受骗)、各种收费; 于是我记录一下我自己生成SSL证书的过程。 前几年我依稀记得免费时间有一年以上的ÿ…...

十二、结构型(代理模式)
代理模式(Proxy Pattern) 概念 代理模式(Proxy Pattern)是一种结构型设计模式,代理对象在不改变目标对象功能的前提下,通过控制对目标对象的访问,来实现延迟加载、权限控制、日志记录等功能。代…...

使用 python 下载 bilibili 视频
本文想要达成的目标为:运行 python 代码之后,在终端输入视频链接,可自动下载高清 1080P 视频并保存到相应文件夹。 具体可分为两大步:首先,使用浏览器开发者工具 F12 获取请求链接相关信息(根据 api 接口下…...

DevExpress WinForms中文教程:Data Grid - 如何点击获取信息?
在使用DevExpress WinForms的Data Grid之类控件时,可能需要实现自定义用户交互,例如显示数据行的上下文菜单,或者在双击一行时调用编辑表单。在这些情况下,您需要在指定的坐标处标识网格元素。 在本教程中,您将学习如…...

真空牛肉滚揉机的优点:
真空滚揉机是一种用于食品加工的设备,主要用于肉类深加工,如肉食制品和低温火腿的生产。 它通过滚揉、按压和腌制的过程,在真空状态下将原料肉与辅料、添加剂均匀混合,以提高肉制品的质量和口感。 真空滚揉机的工作原理是利…...

【物流配送中心选址问题】基于退火算法混合粒子群算法
课题名称: 基于退火算法混合粒子群算法的物流配送中心选址问题 改进方向:模拟退火算法优化粒子群算法 代码获取方式(付费): 模型说明: 待补充 Matlab仿真结果: 1. 模型优化后的仿真结果 2…...

elasticsearch 8.2 版本账号密码设置及SSL设置
背景:elasticsearch 8.2 设置账号密码-CSDN博客 failed to load SSL configuration does not contain any trusted certificate entries [2024-10-08T17:06:53,704][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1] uncaught exception in thread [main] org…...

git gui基本使用
一、图形化界面 二、创建新项目 创建文件,加入暂存区,提交到版本库 三、创建分支 四、合并分支 1.切换至master 五、更新分支 六、解决冲突 修改冲突,加入暂存区,提交到版本库 七、远程创建库 Gitee - 基于 Git 的代码托管和研…...

从automaxprocs库浅窥Linux容器的资源控制
automaxprocs能够自动调整Go程序中的Goroutine数量,以充分利用系统资源并提高程序的性能。 automaxprocs通过读取系统信息,如CPU核心数和Cgroups限制,来动态调整Goroutine的数量 automaxprocs获取CPU限额的关键方法在 // CPUQuotaToGOMAXP…...

AI 读文献(二):综述论文10倍速读和整理
我是娜姐 迪娜学姐 ,一个SCI医学期刊编辑,探索用AI工具提效论文写作和发表。 上一篇娜姐讲了research研究论文的速度框架和效果, AI阅读研究论文,这个方法10倍速提升效率还不损失关键信息! 学员们反馈效果很好&#x…...