当前位置: 首页 > news >正文

使用PVE快速创建虚拟机集群并搭建docker环境

安装Linux系统

这里以安装龙蜥操作系统AnolisOS8.9为例加以说明。
通过PVE后台上传操作系统ISO镜像。
在这里插入图片描述

然后在PVE上【创建虚拟机】,选定上传的龙蜥操作系统镜像进行系统安装。
注意:在安装过程中,要设定语言、时区、超管用户root的密码、普通用户k8s的账号和密码、内存、磁盘大小等参数。超管用户与普通用户的密码尽量保持一致,来回切换懒得匹配不同的密码。
安装好系统后,如果通过命令sudo su无法提升权限,需要把当前用户加入

# 切换root超管用户
su root# 编辑/etc/sudoers
vi /etc/sudoers# 然后在下面%wheel的下面添加一行,如安装操作系统时创建的普通用户为k8s,则添加%k8s这一行内容
## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL
%k8s    ALL=(ALL)       ALL

保存配置后退出。
为了加快服务器访问速度,还要配置域名解析文件。
编辑Dns解析配置文件,路径在/etc/resolv.conf。

# vi /etc/resolv.conf
search local
nameserver 211.xx.xx.xx     # 域名服务器地址

配置静态IP

编辑网卡配置文件,这里的网卡使用ens18,配置文件在/etc/sysconfig/network-scripts/ifcfg-ens18。注意:不同系统路径可能有差别,根据实际使用的网卡及系统进行配置。

# vi /etc/sysconfig/network-scripts/ifcfg-ens18
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static           # 静态IP方式
IPADDR=172.xx.xx.22        # 具体的IP
NETMASK=255.255.255.0
GATEWAY=172.xx.xx.1        # 网关,不一定为.1
DNS1=211.xx.xx.xx          # DNS地址解析服务器DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=eui64
NAME=ens18
UUID=xx-xx-xx
DEVICE=ens18
ONBOOT=on                 # 静态网卡跟随系统一起启动

克隆虚拟机

克隆创建好的虚拟机,只需修改hosts和静态IP即可。

  1. 修改/etc/hosts中的hostname
  2. 修改静态IP
    在/etc/sysconfig/network-scripts/ifcfg-ens18

安装基础包

安装wget包

[root@localhost soft]# yum install -y wget
Last metadata expiration check: 0:02:09 ago on Thu 09 Jan 2025 04:10:30 PM CST.
Dependencies resolved.
=========================================================================================================================================================================================Package                                     Architecture                           Version                                              Repository                                 Size
=========================================================================================================================================================================================
Installing:wget                                        x86_64                                 1.19.5-12.0.1.an8                                    AppStream                                 705 k
Installing dependencies:libmetalink                                 x86_64                                 0.1.3-7.0.1.an8                                      BaseOS                                     30 kTransaction Summary
=========================================================================================================================================================================================
Install  2 PackagesTotal download size: 735 k
Installed size: 2.7 M
Downloading Packages:
(1/2): wget-1.19.5-12.0.1.an8.x86_64.rpm                                                                                                                 136 kB/s | 705 kB     00:05    
(2/2): libmetalink-0.1.3-7.0.1.an8.x86_64.rpm                                                                                                            4.1 kB/s |  30 kB     00:07    
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                    101 kB/s | 735 kB     00:07     
AnolisOS-8 - AppStream                                                                                                                                   158 kB/s | 3.0 kB     00:00    
Importing GPG key 0x4873F7C5:Userid     : "Anolis OS <os@openanolis.org>"Fingerprint: F87D B652 2967 855E 986F 840C 6191 4008 4873 F7C5From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-ANOLIS
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                                                                                                                                 1/1 Installing       : libmetalink-0.1.3-7.0.1.an8.x86_64                                                                                                                              1/2 Installing       : wget-1.19.5-12.0.1.an8.x86_64                                                                                                                                   2/2 Running scriptlet: wget-1.19.5-12.0.1.an8.x86_64                                                                                                                                   2/2 Verifying        : wget-1.19.5-12.0.1.an8.x86_64                                                                                                                                   1/2 Verifying        : libmetalink-0.1.3-7.0.1.an8.x86_64                                                                                                                              2/2 Installed:libmetalink-0.1.3-7.0.1.an8.x86_64                                                            wget-1.19.5-12.0.1.an8.x86_64                                                           Complete!
[root@localhost soft]# 
[root@localhost soft]# rpm -qa|grep "wget"
wget-1.19.5-12.0.1.an8.x86_64
[root@localhost soft]# 
[root@localhost soft]# wget https://github.com/goharbor/harbor/releases/download/v2.12.1/harbor-offline-installer-v2.12.1.tgz
--2025-01-09 16:13:00--  https://github.com/goharbor/harbor/releases/download/v2.12.1/harbor-offline-installer-v2.12.1.tgz
Resolving github.com (github.com)... 
20.205.243.166
Connecting to github.com (github.com)|20.205.243.166|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/50613991/806eb4e2-6da8-42f1-888f-29d44c0d9a96?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20250109%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20250109T081305Z&X-Amz-Expires=300&X-Amz-Signature=f82138a7280433879a3ea8c62d5325709a734884ce732cb12f42415b7859eb29&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3Dharbor-offline-installer-v2.12.1.tgz&response-content-type=application%2Foctet-stream [following]
--2025-01-09 16:13:06--  https://objects.githubusercontent.com/github-production-release-asset-2e65be/50613991/806eb4e2-6da8-42f1-888f-29d44c0d9a96?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20250109%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20250109T081305Z&X-Amz-Expires=300&X-Amz-Signature=f82138a7280433879a3ea8c62d5325709a734884ce732cb12f42415b7859eb29&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3Dharbor-offline-installer-v2.12.1.tgz&response-content-type=application%2Foctet-stream
Resolving objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.108.133, 185.199.111.133, 185.199.110.133, ...
Connecting to objects.githubusercontent.com (objects.githubusercontent.com)|185.199.108.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 703617262 (671M) [application/octet-stream]
Saving to: ‘harbor-offline-installer-v2.12.1.tgz’harbor-offline-installer-v2.12.1.tgz           100%[=================================================================================================>] 671.02M  21.9MB/s    in 29s     2025-01-09 16:13:35 (23.5 MB/s) - ‘harbor-offline-installer-v2.12.1.tgz’ saved [703617262/703617262][root@localhost soft]# 
[root@localhost soft]# 
[root@localhost soft]# ls -alh
total 672M
drwxrwxr-x  2 k8s  k8s    50 Jan  9 16:13 .
drwx------. 3 k8s  k8s    95 Jan  9 15:52 ..
-rw-r--r--  1 root root 672M Dec 24 15:03 harbor-of

制作快照

对上面创建好的3台虚拟机初始环境创建快照,方便后面回滚使用初始安装的Linux系统重新部署新环境使用。

配置docker环境

更新yum源

更新软件源中的包。

yum update

安装底层工具

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

添加阿里云仓库

# 添加阿里云的docker镜像仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

刷新源信息

yum makecache --timer

下载docker-ce

使用yum -y install docker-ce docker-ce-cli containerd.io命令安装docker相关资源包,更新龙蜥8.9的软件园后,安装的docker版本呢是26.1.3,还是比较新的。

[root@localhost harbor]# yum -y install docker-ce docker-ce-cli containerd.io
Docker CE Stable - x86_64                                                                                                                                6.3 kB/s |  66 kB     00:10    
Dependencies resolved.
=========================================================================================================================================================================================Package                                        Architecture                Version                                                          Repository                             Size
=========================================================================================================================================================================================
Installing:containerd.io                                  x86_64                      1.6.32-3.1.el8                                                   docker-ce-stable                       35 Mdocker-ce                                      x86_64                      3:26.1.3-1.el8                                                   docker-ce-stable                       27 Mdocker-ce-cli                                  x86_64                      1:26.1.3-1.el8                                                   docker-ce-stable                      7.8 M
Installing dependencies:container-selinux                              noarch                      2:2.229.0-2.module+an8.9.0+11261+8fb088a9                        AppStream                              70 kfuse-common                                    x86_64                      3.3.0-19.an8                                                     BaseOS                                 21 kfuse-overlayfs                                 x86_64                      1.13-1.0.1.module+an8.9.0+11261+8fb088a9                         AppStream                              69 kfuse3                                          x86_64                      3.3.0-19.an8                                                     BaseOS                                 54 kfuse3-libs                                     x86_64                      3.3.0-19.an8                                                     BaseOS                                 95 klibcgroup                                      x86_64                      2.0-1.0.1.an8                                                    BaseOS                                 78 klibslirp                                       x86_64                      4.4.0-2.module+an8.9.0+11257+d476ec85                            AppStream                              69 kslirp4netns                                    x86_64                      1.2.3-1.module+an8.9.0+11261+8fb088a9                            AppStream                              55 k
Installing weak dependencies:docker-buildx-plugin                           x86_64                      0.14.0-1.el8                                                     docker-ce-stable                       14 Mdocker-ce-rootless-extras                      x86_64                      26.1.3-1.el8                                                     docker-ce-stable                      5.0 Mdocker-compose-plugin                          x86_64                      2.27.0-1.el8                                                     docker-ce-stable                       13 M
Enabling module streams:container-tools                                                            an8                                                                                                         

验证docker是否安装成功

[root@localhost harbor]# docker -v
Docker version 26.1.3, build b72abbb

展示出具体的docker版本,即说明docker安装成功。

组建k8s集群

敬请关注后续文章。

参考

龙蜥Linux系统部署docker21.1.3版本
手把手教你搭建Docker私有仓库Harbor
Docker部署私有仓库(registry&Harbor)
内网环境下离线安装Docker
Anolis8.8安装docker-ce
自建Docker镜像加速服务,基于官方 registry 一键部署Docker、K8s、Quay、Ghcr、Mcr、elastic、nvcr等镜像加速/管理服务
Docker/DockerHub 国内镜像源/加速列表(1月6日更新-长期维护)

相关文章:

使用PVE快速创建虚拟机集群并搭建docker环境

安装Linux系统 这里以安装龙蜥操作系统AnolisOS8.9为例加以说明。 通过PVE后台上传操作系统ISO镜像。 然后在PVE上【创建虚拟机】&#xff0c;选定上传的龙蜥操作系统镜像进行系统安装。 注意&#xff1a;在安装过程中&#xff0c;要设定语言、时区、超管用户root的密码、普…...

带格式 pdf 翻译

支持 openAI 接口&#xff0c;国内 deepseek 接口兼容 openAI 接口&#xff0c; deepseek api 又非常便宜 https://pdf2zh.com/ https://github.com/Byaidu/PDFMathTranslate...

【C++】C++11(一)

目录 一、C11简介二、统一的列表初始化2.1 &#xff5b;&#xff5d;初始化2.2 std::initializer_list 三、声明3.1 auto3.2 decltype3.3 nullptr 四、范围for五、智能指针六、STL中一些变化七、右值引用和移动语义7.1 左值引用和右值引用7.2 左值引用与右值引用比较7.3 右值引…...

初学stm32 --- ADC单通道采集

目录 ADC寄存器介绍&#xff08;F1&#xff09; ADC控制寄存器 1(ADC_CR1) ADC控制寄存器 2(ADC_CR2) ADC采样时间寄存器1(ADC_SMPR1) ADC采样时间寄存器2(ADC_SMPR2) ADC规则序列寄存器 1(ADC_SQR1) ADC规则序列寄存器 2(ADC_SQR2) ADC规则序列寄存器 3(ADC_SQR3) AD…...

【动态规划篇】欣赏概率论与镜像法融合下,别出心裁探索解答括号序列问题

本篇鸡汤&#xff1a;没有人能替你承受痛苦&#xff0c;也没有人能拿走你的坚强. 欢迎拜访&#xff1a;羑悻的小杀马特.-CSDN博客 本篇主题&#xff1a;带你解答洛谷的括号序列问题&#xff08;绝对巧解&#xff09; 制作日期&#xff1a;2025.01.10 隶属专栏&#xff1a;C/C题…...

Java(day7)

字符串练习 生成验证码 package day6; /*生成验证码 内容&#xff1a;可以是小写字母&#xff0c;也可以是大写字&#xff0c;还可以是数字 规则&#xff1a; 长度为5 内容中是四位字母&#xff0c;1位数字。 其中数字只有1位&#xff0c;但是可以出现在任意的位置。*/ impor…...

Word 转成pdf及打印的开源方案支持xp

Word转成pdf、打印的方案几乎没有免费开源的方案&#xff0c;现在提供一个通过LibreOffice实现的方案 操作依赖LibreOffice需要安装&#xff0c;点此下载老版本 5.4.7.2是最后一个支持xp的 版本如需xp要请安装此版本 LibreOffice官方介绍 LibreOffice 是一款开放源代码的自…...

LabVIEW软件侵权分析与应对

问&#xff1a;如果涉及到LabVIEW软件的仿制或模仿&#xff0c;特别是在功能、界面等方面&#xff0c;如何判断是否构成侵权&#xff1f;该如何应对&#xff1f; 答&#xff1a;LabVIEW软件的侵权问题&#xff0c;尤其是在涉及到仿制或模仿其功能、界面、设计等方面&#xff0…...

【redis】centos7下安装redis7

在CentOS 7下安装Redis7可以通过以下两种方法实现&#xff1a;手动编译安装和使用YUM进行安装。 CentOS 7系统的环境和版本&#xff1a; $ cat /etc/centos-release CentOS Linux release 7.9.2009 (Core)手动编译安装 参考官方文档&#xff1a;https://redis.io/docs/lates…...

[network]回顾:集线器(Hub)

集线器&#xff08;Hub&#xff09;的发明是计算机网络发展史上的一个重要里程碑。它最初的设计目的是为了解决局域网&#xff08;LAN&#xff09;中多台计算机共享网络资源的需求。 #mermaid-svg-OAmOmKYGAXoglS5z {font-family:"trebuchet ms",verdana,arial,sans-…...

79 Openssl3.0 RSA公钥加密数据

1 引言 最近不小心用到了openssl3.0&#xff0c;项目中需要使用rsa非对称加解密算法&#xff0c;所以把openssl3.0使用公钥加密数据的函数调用摸了一遍。 之所以记录此篇文章&#xff0c;是因为网络上大多数是openssl3.0以前的版本的函数接口&#xff0c;而openssl3.0之后已经丢…...

EFCore HasDefaultValueSql (续2 HasComputedColumnSql)

前情&#xff1a;EFCore HasDefaultValueSql EFCore HasDefaultValueSql (续1 ValueGeneratedOnAdd)-CSDN博客 小伙伴在使用 HasDefaultValueSql 时&#xff0c;对相关的 ValueGeneratedOnAdd, HasComputedColumnSql 也有了疑问&#xff1a; HasComputedColumnSql 对于计算…...

阿里巴巴TransmittableThreadLocal使用指南

前言 ThreadLocal在上下文的数据传输上非常的方便和简洁。工业实践中&#xff0c;比较常用的有三个&#xff0c;ThreadLocal、InheritableThreadLocal、TransmittableThreadLocal&#xff0c;那么他们三个之间有什么区别呢&#xff1f; 常见的三种ThreadLocal比较 ThreadLoc…...

ubuntu20下编译linux1.0 (part1)

author: hjjdebug date: 2025年 01月 09日 星期四 15:56:15 CST description: ubuntu20下编译linux1.0 (part1) 该博客记录了新gcc编译旧代码可能碰到的问题和解决办法, 可留作参考 操作环境: ubuntu20 $ gcc --version gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0 $ as --vers…...

欧拉公式和傅里叶变换

注&#xff1a;英文引文机翻&#xff0c;未校。 中文引文未整理去重&#xff0c;如有异常&#xff0c;请看原文。 Euler’s Formula and Fourier Transform Posted byczxttkl October 7, 2018 Euler’s formula states that e i x cos ⁡ x i sin ⁡ x e^{ix} \cos{x} i …...

Jenkins内修改allure报告名称

背景&#xff1a; 最近使用Jenkins搭建自动化测试环境时&#xff0c;使用Jenkins的allure插件生成的报告&#xff0c;一直显示默认ALLURE REPORT&#xff0c;想自定义成与项目关联的名称&#xff0c;如图所示&#xff0c;很明显自定义名称显得高大上些&#xff0c;之前…...

30天开发操作系统 第 12 天 -- 定时器 v1.0

前言 定时器(Timer)对于操作系统非常重要。它在原理上却很简单&#xff0c;只是每隔一段时间(比如0.01秒)就发送一个中断信号给CPU。幸亏有了定时器&#xff0c;CPU才不用辛苦地去计量时间。……如果没有定时器会怎么样呢?让我们想象一下吧。 假如CPU看不到定时器而仍想计量时…...

Ubuntu | PostgreSQL | 解决 ERROR: `xmllint` is missing on your system.

解决 sudo apt install apt-file sudo apt-file updatesudo apt-file search xmllint sudo apt install libxml2-utils执行 # postgres源码安装包解压文件夹中 make install make install问题 make -C src install make[2]: Entering directory /home/postgres/postgresql-1…...

uniapp使用chooseLocation安卓篇

本文章全部以高德地图为例 代码 <view class"bottom"><button click"choose">定位</button> </view> choose() {uni.chooseLocation({success: function(res) {console.log(位置名称&#xff1a; res.name);console.log(详细地…...

《PC 上的开源神经网络多模态模型:开启智能交互新时代》

《PC 上的开源神经网络多模态模型&#xff1a;开启智能交互新时代》 一、引言二、多模态模型基础剖析&#xff08;一&#xff09;核心概念解读&#xff08;二&#xff09;技术架构探秘 三、开源多模态模型的独特魅力&#xff08;一&#xff09;开源优势尽显&#xff08;二&…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

Python爬虫(二):爬虫完整流程

爬虫完整流程详解&#xff08;7大核心步骤实战技巧&#xff09; 一、爬虫完整工作流程 以下是爬虫开发的完整流程&#xff0c;我将结合具体技术点和实战经验展开说明&#xff1a; 1. 目标分析与前期准备 网站技术分析&#xff1a; 使用浏览器开发者工具&#xff08;F12&…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码

目录 一、&#x1f468;‍&#x1f393;网站题目 二、✍️网站描述 三、&#x1f4da;网站介绍 四、&#x1f310;网站效果 五、&#x1fa93; 代码实现 &#x1f9f1;HTML 六、&#x1f947; 如何让学习不再盲目 七、&#x1f381;更多干货 一、&#x1f468;‍&#x1f…...

使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度

文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

华为OD机考-机房布局

import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中&#xff0c;可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中&#xff0c;必须做到&#xff1a; &#x1f50d; 追踪每一条 SQL 的生命周期&#xff08;从入口到数据库执行&#xff09;&#…...