kubeasz安装kubernetes1.25.5

news2024/9/27 5:55:03

kubeasz安装k8s

1 配置

kubeasz安装kubernetes,只需要做好网通配置,做好ssh免密通信配置即可

1.1 环境介绍

OS:CentOS Linux release 8.5.2111

机器:

IPhostname
10.104.10.201k8s-master
10.104.10.202k8s-node

所有机器,都将yum源改为国内阿里云开源镜像源

cd /etc/yum.repos.d/
mkdir backup
mv CentOS-* backup
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
yum clean all && yum makecache

1.2 时间同步

所有机器都安装chrony,配置时间同步

# 安装chrony,从CentOS8.x开始,改为chrony同步时间
yum install chrony -y
# 设置开始启动,并立即启动服务
systemctl enable chronyd --now

vim /etc/chrony.conf
# 注释掉 pool 2.centos.pool.ntp.org.iburst
# 添加阿里云地址
server ntp.aliyun.com iburst
server cn.ntp.org.cn iburst

# 用东八区,北京,上海的时间
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

# 重启服务
systemctl restart chronyd
# 立即同步时间
chronyc sources && chronyc -a makestep

1.3 升级内核

所有机器统一升级内核

# 导入elrepo gpg key
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# 安装 elrepo YUM源仓库
dnf install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm -y
# 安装kernel-ml版本,ml为长期稳定版本,lt为长期维护版本,建议安装lt版本
dnf --enablerepo=elrepo-kernel install kernel-lt -y
# 设置grub2默认引导为0
grub2-set-default 0
# 重新生成grub2引导文件
grub2-mkconfig -o /boot/grub2/grub.cfg
# 更新后,需要重启,使升级的内核生效
reboot

**sestatus -v**命令查看SELuinux状态,若显示为disabled,则代表已经禁用

1.4 修改hostname

所有机器依次修改hostname

# 在10.104.10.201执行
hostnamectl set-hostname k8s-master
# 在10.104.10.202执行
hostnamectl set-hostname k8s-node

1.5 配置 hosts

所有机器配置下 hosts

cat >> /etc/hosts<<EOF
10.104.10.201 k8s-master
10.104.10.202 k8s-node
EOF

1.6 配置 ssh 互信

所有机器输入以下命令,创建一组公钥和私钥

# 直接一直回车就行
ssh-keygen

所有机器上执行公钥拷贝命令

ssh-copy-id -i ~/.ssh/id_rsa.pub root@k8s-master
ssh-copy-id -i ~/.ssh/id_rsa.pub root@k8s-node

2 准备

2.1 配置epel源

所有机器配置阿里云epel源

# centos7
#wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

# centos8
yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
sed -i 's|^#baseurl=https://download.example/pub|baseurl=https://mirrors.aliyun.com|' /etc/yum.repos.d/epel*
sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel*

2.2 安装python pip

所有机器安装python pip

# centos7
#yum install -y python-pip python3 python-netaddr
#pip install pip --upgrade -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
#pip install ansible==2.6.12 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

# centos8
dnf install -y python3-pip python3 python3-netaddr
pip3 install pip --upgrade -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
pip3 install ansible==2.6.12 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

配置软链,否则后面的初始化集群时报找不到python

kubeasz_Gathering_Facts_python_error.png

这里提前配置python软链

ln -s /usr/bin/python3.6 /usr/bin/python

2.3 下载工具脚本

master机器(或者是指定的跳板机)上下载工具脚本ezdown,到https://github.com/easzlab/kubeasz/releases查看最新版本号,这里以3.4.3为例

export release=3.4.3
wget https://github.com/easzlab/kubeasz/releases/download/${release}/ezdown
chmod +x ./ezdown

使用工具脚本下载

# 下载需要的脚本、二进制文件和镜像文件
./ezdown -D

**./ezdown -D**多执行几遍,直至再执行的时候提示INFO Action successed: download_all为止。这样就在/etc/kubeasz目录下下载了在线安装所有需要的脚本、二进制文件和镜像文件。

另外,通过执行**./ezdown -D**会发现docker环境也在主控宿主机安装好,这个效果即使在做非k8集群本地化交付场景的时候也特别有用。

3 部署

3.1 创建集群

创建集群==k8s==

cd /etc/kubeasz
./ezctl new k8s

执行创建命令后如下方所示

bash-5.1# ezctl new k8s
2023-01-17 05:59:32 DEBUG generate custom cluster files in /etc/kubeasz/clusters/k8s
2023-01-17 05:59:32 DEBUG set versions
2023-01-17 05:59:32 DEBUG cluster k8s: files successfully created.
2023-01-17 05:59:32 INFO next steps 1: to config ‘/etc/kubeasz/clusters/k8s/hosts’
2023-01-17 05:59:32 INFO next steps 2: to config ‘/etc/kubeasz/clusters/k8s/config.yml’

3.2 配置集群

修改==/etc/kubeasz/clusters/k8s/hosts==配置文件中的[etcd][kube_master][kube_node]三处的IP地址;

k8s的nodeport端口默认范围为**30000-32767**,在配置文件NODE_PORT_RANGE后面同样可以自行修改

vi /etc/kubeasz/clusters/k8s/hosts

==/etc/kubeasz/clusters/k8s/hosts==配置文件修改后如下:


[etcd]
10.104.10.201
10.104.10.202


[kube_master]
10.104.10.201


[kube_node]
10.104.10.202


NODE_PORT_RANGE=“80-65535”

因为是centos8系统,安装方式与centos7上有些区别,不修改安装方式,后续集群安装会遇到下面错误

kubeasz_prepare_dnf_error.png

修改==/etc/kubeasz/roles/prepare/tasks/centos.yml==配置文件中的安装方式

sed -i 's#yum:#dnf:#g' /etc/kubeasz/roles/prepare/tasks/centos.yml
# 查看编码
grep dnf /etc/kubeasz/roles/prepare/tasks/centos.yml

3.3 部署集群

这里采用一键安装方式

cd /etc/kubeasz
./ezctl setup k8s all
同样也可以分步骤安装
# 分步安装 需要分别执行01-07的yml
cd /etc/kubeasz
# 01-创建证书和环境准备
bash-5.1# ./ezctl setup k8s 01
# 02-安装etcd集群
bash-5.1# ./ezctl setup k8s 02
# 03-安装容器运行时(docker or containerd)
bash-5.1# ./ezctl setup k8s 03
# 04-安装kube_master节点
bash-5.1# ./ezctl setup k8s 04
# 05-安装kube_node节点
bash-5.1# ./ezctl setup k8s 05
# 06-安装网络组件
bash-5.1# ./ezctl setup k8s 06
# 07-安装集群主要插件
bash-5.1# ./ezctl setup k8s 07

3.4 销毁集群

当k8s集群需要销毁时,通过指定集群名称进行销毁

cd /etc/kubeasz
./ezctl destroy k8s

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

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

相关文章

3-4存储系统-虚拟存储器(CO)

文章目录一.页式存储1.页式存储系统2.逻辑地址到物理地址的转换3.页表4.快表TLB二.虚拟存储器&#xff08;一&#xff09;页式虚拟存储器&#xff08;二&#xff09;段式虚拟存储器&#xff08;三&#xff09;段页式虚拟存储器一.页式存储 1.页式存储系统 为提高主存的空间利…

JS中的splice方法添加或删除数组中的元素

splice方法嘚吧嘚语法下标问题实战splice(index)splice(index,howmany)示例一(howmany&#xff1e;0)示例二(howmany ≤ 0)splice(index,howmany,item1,.....,itemX)howmany ≤ 0示例一(index ≥ 0)示例二(index&#xff1c;0)howmany&#xff1e;0示例一(index ≥ 0)示例二(in…

Spring Cloud Kubernetes 本地开发

简介 Spring Cloud Kubernetes 是spring官方集成Kubernetes的一个框架.可以直接将springboot项目使用Kubernetes做为注册中心.很方便,但是我们本地开发的时候很难进行调试,因为我们本地没有Kubernetes环境. 下面介绍一种能够本地开发的方式 KT-Connect KtConnect&#xff08;Kt…

【倍增+最短路】P1613 跑路

不知道是因为这样的套路太典了还是因为什么&#xff0c;这难度只有绿题&#xff0c;可是我感觉好难想到QwQ不过今天写了好几道倍增&#xff0c;好像有点感觉了捏P1613 跑路 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)题意&#xff1a;思路&#xff1a;一开始的思路就是建图…

【内存函数】-关于内存的操作函数

作者&#xff1a;小树苗渴望变成参天大树 作者宣言&#xff1a;认真写好每一篇博客 作者gitee&#xff1a;gitee 如 果 你 喜 欢 作 者 的 文 章 &#xff0c;就 给 作 者 点 点 关 注 吧&#xff01; 内存函数前言一、[memcpy](https://cplusplus.com/reference/cstring/memc…

初识软件测试

作者&#xff1a;~小明学编程 文章专栏&#xff1a;测试开发 格言&#xff1a;热爱编程的&#xff0c;终将被编程所厚爱。 目录 什么是软件测试&#xff1f; 软件测试和软件开发的区别&#xff1f; 调试和测试的区别&#xff1f; 优秀的测试人员应该具备哪些素质&#xff…

cherry-pick的定义和使用方法

1、定义 使用遴选&#xff08;cherry-pick&#xff09;命令&#xff0c;Git 可以让你将任何分支中的个别提交合并到你当前的 Git HEAD 分支中。当执行 git merge 或者 git rebase 时&#xff0c;一个分支的所有提交都会被合并。cherry-pick 命令允许你选择单个提交进行整合。 …

正点原子STM32(基于HAL库)3

目录RTC 实时时钟实验RTC 时钟简介RTC 框图RTC 寄存器硬件设计低功耗实验电源控制&#xff08;PWR&#xff09;简介电源系统电源监控电源管理PVD 电压监控实验PWR 寄存器硬件设计睡眠模式实验硬件设计停止模式实验PWR 寄存器硬件设计待机模式实验PWR 寄存器硬件设计ADC 实验ADC…

全国产加固以太网交换机选择技巧

全国产加固交换机用于连接以太网设备&#xff1a;首先接收由某台设备发出的数据帧&#xff0c;然后再将这些帧传送到与其它以太网设备相连的适当交换机端口上。随着它传送这些帧&#xff0c;学习并掌握以太网设备的位置&#xff0c;并用这些信息来决定该用哪些端口来传送帧&…

83. 深度循环神经网络及代码实现

1. 回顾&#xff1a;循环神经网络 2. 更深 再看公式&#xff1a; 3. 总结 深度循环神经网络使用多个隐藏层来获得更多的非线性性 4. 代码简洁实现 实现多层循环神经网络所需的许多逻辑细节在高级API中都是现成的。 简单起见&#xff0c;我们仅示范使用此类内置函数的实现方式…

虚拟机本地搭建Hadoop集群教程

Hadoop概述 狭义下Hadoop是Apache的一套开源软件&#xff0c;用java实现&#xff0c;广义上是围绕Hadoop打造的大数据生态圈 http://hadoop.apache.org Hadoop核心组件&#xff1a; HDFS&#xff08;分布式文件存储系统&#xff09;&#xff1a;解决海量数据存储YARN&#…

Spring 常用组件

一. Spring 解决了什么问题 Spring 核心功能是整合&#xff0c;提供一个管理组件的容器&#xff0c; 以 Bean的形式管理组件及对象。Spring 采用分层架构和组件化设计&#xff0c;允许分层&#xff0c;插件化选择组件。二. Spring 整体架构 Spring4架构图 三. Spring 组件 1.…

Spring | 整合MyBatis中SqlSessionTemplate和MapperScannerConfigurer类的使用

0️⃣初始配置&#x1f6a9;pom.xml导入依赖<?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"ht…

大数据开发工程师考试分享

在2022年年尾伴随着疫情政策的放开&#xff0c;压抑了3年的活力与生机正在悄然地蓄势待发。回顾这一整年&#xff0c;我们经历了核酸考验&#xff0c;互联网裁员危机&#xff0c;以及正面面对新冠等等。总之&#xff0c;在这一年无论是生活还是工作&#xff0c;大家都面临了不同…

大公司VS小公司,怎样选择更有前途?

你好&#xff0c;我是王喆。 学完上一讲&#xff0c;你已经知道了如何选择一个有前景的职业方向。在大方向确定好之后&#xff0c;接下来的问题就是如何在这个方向上进行具体的职业发展规划了。 我想你一定听说过很多牛人的“职场升级”故事&#xff1a;工作3年升到P7&#x…

春节不打烊,这份安全应急指南请收好!

春节作为中国的传统节日&#xff0c;不仅是各个企业的营销重点周期&#xff0c;也是黑灰产高发节点之一。尤其是伴随着互联网的兴起&#xff0c;春节红包逐渐成为主流营销节目&#xff0c;从支付宝的集五福到各种各样的红包活动&#xff0c;不断翻新的营销花样让黑灰产们赚的盆…

JUC面试(三)——CAS

CAS CAS的全称是Compare-And-Swap&#xff0c;它是CPU并发原语&#xff0c;自旋锁 它的功能是判断内存某个位置的值是否为期望值&#xff0c;如果是则更改为新的值&#xff0c;这个过程是原子的 CAS并发原语体现在Java语言中就是sun.misc.Unsafe类的各个方法。调用UnSafe类中…

深度学习 GAN生成对抗网络-1010格式数据生成简单案例

一、前言 本文不花费大量的篇幅来推导数学公式&#xff0c;而是使用一个非常简单的案例来帮助我们了解GAN生成对抗网络。 二、GAN概念 生成对抗网络&#xff08;Generative Adversarial Networks&#xff0c;GAN&#xff09;包含生成器&#xff08;Generator&#xff09;和鉴…

HyperLogLog和Set比较 !!!

HyperLogLog和Set比较 HyperLogLog HyperLogLog常用于大数据量的统计&#xff0c; 比如页面访问量统计或者用户访问量统计&#xff0c;作为一种概率数据结构&#xff0c;HyperLogLog 以完美的精度换取高效的空间利用率。Redis HyperLogLog 实现最多使用 12 KB&#xff0c;并提…

docker推送镜像至阿里私有镜像仓库

文章目录一、注册阿里私有镜像仓库二、将公共镜像推送至私有镜像仓库1、首先拉取到mysql镜像2、登录阿里云Docker Registry&#xff08;这里的信息要更换成自己的&#xff09;3、将mysql镜像推送至Registry4、查看5、拉取镜像三、将正在启动的容器导出并推送至私有仓库1、将启动…