我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Proxmox虚拟环境搭建

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Proxmox虚拟环境搭建

一、Proxmox VE简介

ProxmoxVE 是一个完整的、开源的企业虚拟化服务器管理平台。它在单个平台上紧密集成了 KVM 管理程序和 Linux 容器(LXC)、软件定义的存储和网络功能。通过集成的基于 web 的用户界面,您可以轻松地管理虚拟机和容器、集群高可用性或集成的灾难恢复工具。

企业级的特性和100% 基于软件的重点使 Proxmox VE 成为虚拟化您的 IT 基础设施、优化现有资源以及以最低成本提高效率的完美选择。您可以轻松地虚拟化甚至最苛刻的 Linux 和 Windows 应用程序工作负载,并随着需求的增长动态扩展计算和存储,确保您的数据中心能够针对未来的增长进行调整。

二、Proxmox VE与ZStack、VMware、OpenStack比较

在这里插入图片描述

三。相关概念

  1. ISO Images Files:proxmox本身是一个定制化的linux操作系统,系统内置了一个web管理页面可以和在系统中使用命令一样建议操作虚拟机的创建和维护。
  2. 数据中心:web管理控制台上可以管理多个节点,每个节点是一个iso镜像安装的操作系统,这些节点组成了数据中心。
  3. PVE:proxmox virtual machine,在web控制台上是一个proxmox虚拟机节点,每个节点是一个iso镜像安装的操作系统,虚拟机内核为KVM。
  4. CT虚拟机: 基于CT模板使用LXC隔离技术实现的容器,VE 安装后默认配置的 apt 软件源和 CT (LXC) 容器模板源均是官方默认的,国内使用性能不佳,建议替换为 清华 Tuna 提供的国内镜像源,速度将有一个较大的提升,其中模板可以理解为容器镜像,默认的镜像有centos,debian等。

四。部署安装

最新版本下载地址:https://www.proxmox.com/en/downloads/category/iso-images-pve
安装环境:hyper-v虚拟机安装。
安装两个pve节点(后续安装集群):

  1. https://192.168.240.183:8006/
  2. https://192.168.240.184:8006/
    以下安装两个环境相同。

安装pve

在hyerv上右键新建虚拟机,内存和cpu根据需要设置自选,选择iso文件
在这里插入图片描述
点击完成,启动虚拟机,出现界面点击安装,选中Install 回车,国家输入China,密码随意,测试简单点直接123456,邮箱必填。
主机名随机,确保ip地址和window网络中defaultswitch网卡的ip区间一致,网关就是default switch的ip,

这里要特别注意hostname自己好规划成每个pve不一样的值,比如这里可以修改为 pve1.example1
,否则在搭建集群加入的时候名字冲突就会出现无法加入情况。
在这里插入图片描述
这是我default switch的ip
在这里插入图片描述
点击下一步,安装完成后,关机,删除掉系统挂载的iso镜像,修改为空,重启,打开虚拟机。
在这里插入图片描述
访问上图的网站地址:
在这里插入图片描述
输入安装系统的用户名和密码,选择简体中文登录
在这里插入图片描述

创建虚拟机

修改apt和ct源

PVE 安装后默认配置的 apt 软件源和 CT (LXC) 容器模板源均是官方默认的,国内使用性能不佳,建议替换为 清华 Tuna 提供的国内镜像源,速度将有一个较大的提升。

如果 pve 官网 iso 镜像下载较慢,也可在 tuna 提供的镜像站下载:https://mirrors.tuna.tsinghua.edu.cn/proxmox/iso/

使用web页面打开webshell页面,点击左侧pve
在这里插入图片描述

替换 apt 软件源

替换前建议先更新下证书,否则可能由于证书不可用导致 https 无法使用,进而无法下载所有软件。

$ sudo apt install apt-transport-https ca-certificates

首先替换通用软件源, Debian 的软件源配置文件是 /etc/apt/sources.list,备份后将其中内容修改为以下即可。

默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-freedeb-class="lazy" data-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-freedeb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free deb-class="lazy" data-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-freedeb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free deb-class="lazy" data-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-freedeb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free deb-class="lazy" data-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

之后替换 pve 软件源,pve 镜像默认的 pve 软件源配置文件是 /etc/apt/sources.list.d/pve-enterprise.list ,备份后将其中内容替换为以下即可:

deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian bullseye pve-no-subscription

最后更新下,速度很快:

sudo apt-get update

替换pve模板源

替换前建议先更新下证书,否则可能由于证书不可用导致 https 无法使用,进而无法下载所有软件。
执行更新

$ sudo apt install apt-transport-https ca-certificates

修改 CT Templates (LXC 容器) 源
将 /usr/share/perl5/PVE/APLInfo.pm 文件中默认的源地址 http://download.proxmox.com 替换为 https://mirrors.tuna.tsinghua.edu.cn/proxmox 即可。

cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_backsed -i 's|http://download.proxmox.com|https://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm

针对 /usr/share/perl5/PVE/APLInfo.pm 文件的修改,重启后生效。

systemctl restart pvedaemon.service

测试下载模板
在这里插入图片描述
下载完成后
在这里插入图片描述
下载到本地缓存中(/var/lib/v2/template/cache,可以手动下载放到该目录),之后就可以用这个模板来创建ct虚拟机了
在这里插入图片描述

上传iso镜像

在这里插入图片描述
点击local选择iso镜像,点击上传
iso镜像地址找对应系统官网即可,centos7:http://isoredirect.centos.org/centos/7/isos/x86_64/
在这里插入图片描述
ios镜像中已经本地拥有了centos7镜像(缓存目录:/var/lib/vz/template/iso,也可以手工下载后上传)。
在这里插入图片描述

iso镜像创建虚拟机

  1. 选择创建虚拟机(名称随意)
    在这里插入图片描述
  2. 选择之前上传的iso镜像
    在这里插入图片描述
  3. 系统默认,磁盘,cpu根据个人需要选择大小,启动虚拟机

开启虚拟化

如果出现错误:TASK ERROR: KVM virtualisation configured, but not available. Either disable in VM configuration or enable in BIOS.
说明 hyper-v或者你的vmware上的虚拟机没有开启虚拟化
hyper-v配置

1、要实现 hyper-v 嵌套虚拟化,首先,我们以管理员身份打开 powershell2、在命令行中输入 get-vm ,列出我们自己的虚拟机PS C:\Users\Windows> Get-VM3、输入 Get-VMProcessor -VMName 主机名 | fl我们可以看到嵌套虚拟化选项(ExposeVirtualizationExtensions )的值为 False,设置为 True 即可,前提虚拟机先关机。4、输入Set-VMProcessor -VMName 主机名 -ExposeVirtualizationExtensions $true正常情况下,是没有输出的,再输入Get-VMProcessor -VMName 主机名 | fl         查看设置结果经过上面 4 步,我们就可以在虚拟机中再进行虚拟化了。

vmware配置
在这里插入图片描述
重新开机web界面开启proxmox创建的100虚拟机,启动后就是一步步安装centos7,略过

连接网络

我这里创建的虚拟机是centos7,需要自己规划ip地址,
我的pve的ip是:192.168.240.183,我给这台pve上的虚拟机设置ip段:192.168.211.0/24
centos设置ip:修改/etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yesIPADDR=192.168.211.2NETMASK=255.255.255.0GATEWAY=192.168.240.183

修改dns服务器 /etc/resolv.conf

nameserver 8.8.8.8

注意你修改的ip网段对于pve(192.168.240.183)是不可见的,所以你需要在pve上添加路由

ip route add 192.168.211.0/24 dev vmbr0

此时可以ping通192.168.240.183,但是ping通baidu或者hyperv的宿主机都是不通的,包过去了不知道怎么回来。
此时可以通过nat 将来自211.0的数据包,转换为原地址为240.183,就可以实现数据来回了
pve上执行。

iptables -t nat -A POSTROUTING -s '192.168.211.0/24' -o vmbr0 -j MASQUERADE

此时能ping通,但是重启后路由和nat就丢了,需要添加到网卡文件
修改/etc/network/interfaces

iface vmbr0 inet static        address 192.168.240.183/24        gateway 192.168.240.177        bridge-ports eth0        bridge-stp off        bridge-fd 0        post-up ip route add 192.168.211.0/24 dev vmbr0        post-up iptables -t nat -A POSTROUTING -s '192.168.211.0/24' -o vmbr0 -j MASQUERADE

重启测试即可

-j MASQUERADE 智能SNAT替换

ct模板创建虚拟机

这里切换到另外一台pve来创建CT虚拟机,后续加入集群可以测试网络互通
我这里创建的虚拟机是centos8-stream,需要自己规划ip地址,
我的pve的ip是:192.168.240.184,我给这台pve上的虚拟机设置ip段:192.168.212.0/24,
ct虚拟机ip:192.168.212.2
centos设置ip:修改/etc/sysconfig/network-scripts/ifcfg-eth0
点击右侧创建CT
在这里插入图片描述
选择本地缓存的模板
在这里插入图片描述
设置ip地址:
在这里插入图片描述
dns设置为:8.8.8.8即可,填错了可以点击网络修改。
同理在240.184添加路由和nat,修改网卡/etc/network/interfaces

post-up ip route add 192.168.212.0/24 dev vmbr0post-up iptables -t nat -A POSTROUTING -s '192.168.212.0/24' -o vmbr0 -j MASQUERADE

在这里插入图片描述

数据中心多节点

多节点

目前我们两个pve都是自己独立的web界面,可以将其中的pve添加到一个集群中,在同一个web界面管理,这里183作为集群管理,184作为一个节点。
在183上执行命令

pvecm create clust    //创建集群clustpvecm status          //查看集群状态

或者在web控制台上点击数据中心,创建集群。
在这里插入图片描述
183上创建完成后点击加入信息,点击复制
在这里插入图片描述
在184上点击加入集群,粘贴信息,输入183的root密码,加入集群完成
在这里插入图片描述

加入失败

detected the following error(s):* this host already contains virtual guestsTASK ERROR: Check if node may join a cluster failed!

注意能加入集群的两个前提

  1. pve集群创建钱不能先创建虚拟机,比如先规划好集群在创建虚拟机。
  2. pve的主机名不能冲突,不能都是pve。

如果一开始主机名称取的相同的需要将其中一台的主机名修改

vi /etc/hostsvi /etc/hostnamehostnamectl set-hostname 新的主机名重启cp -r /etc/pve/nodes/旧主机名/* /etc/pve/nodes/新主机名/重启

加入集群后在183和184web控制台都可以管理两个节点
在这里插入图片描述

内节点容器互通

在各自节点内部添加一个ct容器,ip规划如下
在这里插入图片描述
节点pve:192.168.240.183,添加ct容器ip:192.168.211.2/24 网关:192.168.240.183
节点pve:192.168.240.184,添加ct容器ip:192.168.212.2/24 网关:192.168.240.184
如果直接在容器内部ping是不能互通的,需要通过路由和nat来实现,路由和nat不熟悉的参考:
https://blog.csdn.net/liaomin416100569/article/details/126782055?spm=1001.2014.3001.5501

192.168.240.183网络文件/etc/network/interfaces

  # 这是表示当容器内部有ping命令到节点时,回城怎么走,或者节点ping容器时怎么走  post-up ip route add 192.168.211.0/24 dev vmbr0  # 这里的nat表示所有来自容器211的访问请求,源ip都替换成183请求,这样就可以通过183访问外部访问。  post-up iptables -t nat -A POSTROUTING -s '192.168.211.0/24' -o vmbr0 -j MASQUERADE  # 这里表示通过183访问212段的网络,将请求丢给184处理,184在做一个183nat即可。  post-up ip route add 192.168.212.0/24 dev vmbr0 via 192.168.240.184  #这里表示184过来的请求转换成183来访问就可以访问183容器内部了。  post-up iptables -t nat -A POSTROUTING -s '192.168.240.184/24' -o vmbr0 -j MASQUERADE 

重启网卡 查看路由和iptables,重启了网卡后,虚拟机都需要重启否则,虚拟机和节点间不通

--------------------重启网络root@pve:~# systemctl restart networking--------------------路由root@pve:~# ip routedefault via 192.168.240.177 dev vmbr0 proto kernel onlink 192.168.211.0/24 dev vmbr0 scope link 192.168.212.0/24 via 192.168.240.184 dev vmbr0 192.168.240.0/24 dev vmbr0 proto kernel scope link class="lazy" data-src 192.168.240.183 --------------------nat插卡root@pve:~# iptables -S -t nat-P PREROUTING ACCEPT-P INPUT ACCEPT-P OUTPUT ACCEPT-P POSTROUTING ACCEPT-A POSTROUTING -s 192.168.211.0/24 -o vmbr0 -j MASQUERADE-A POSTROUTING -s 192.168.212.0/24 -o vmbr0 -j MASQUERADE-A POSTROUTING -s 192.168.211.0/24 -o vmbr0 -j MASQUERADE-A POSTROUTING -s 192.168.240.0/24 -o vmbr0 -j MASQUERADE

192.168.240.184网络文件/etc/network/interfaces

  post-up ip route add 192.168.212.0/24 dev vmbr0  post-up iptables -t nat -A POSTROUTING -s '192.168.212.0/24' -o vmbr0 -j MASQUERADE  post-up ip route add 192.168.211.0/24 dev vmbr0 via 192.168.240.183  post-up iptables -t nat -A POSTROUTING -s '192.168.240.183/24' -o vmbr0 -j MASQUERADE

来源地址:https://blog.csdn.net/liaomin416100569/article/details/128134043

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Proxmox虚拟环境搭建

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python搭建虚拟环境

1 . 问题:如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果使用上面的命令, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了.  解决方案 : 虚拟环境作用 : 虚拟环境可以搭
2023-01-30

python虚拟开发环境搭建

目录:python版本问题开发环境-pyenv虚拟环境-virtualenv一. python版本2.x:发展到了2.7.133.x:发展到了3.63.x始自2008年,3.5版本发布于2015年https://pythonclock.or
2023-01-31

虚拟主机环境怎么搭建

搭建虚拟主机环境需要以下步骤:1. 选择合适的服务器操作系统:常用的服务器操作系统有Linux和Windows Server,根据自己的需求选择合适的操作系统。2. 安装Web服务器软件:常用的Web服务器软件有Apache、Nginx和I
2023-08-16

如何搭建虚拟主机环境

搭建虚拟主机环境可以分为以下几个步骤:1. 选择合适的虚拟化软件:常见的虚拟化软件有VMware、VirtualBox、KVM等,根据自己的需求选择合适的软件。2. 安装虚拟化软件:根据选择的虚拟化软件,下载并安装到主机操作系统上。3. 创
2023-08-29

Python插件virtualenv搭建虚拟环境

这里想象一下需求,写一个项目使用的一系列1.0版本的插件,现在要新写一个项目,需要用这些插件的2.0版本,该怎么办?都更新成2.0版本?这样之前的项目都没法维护了 这时我们需要一个虚拟环境,Python就支持这样一个插件,virtualen
2022-06-04

python虚拟环境的搭建及作用

Python的虚拟环境可以使一个Python程序拥有独立的库library和解释器interpreter,而不用与其他Python程序共享统一个library和interpreter。虚拟环境的好处是避免了不同Python程序间的互相影响(
2023-01-30

php虚拟空间环境怎么搭建

要搭建PHP虚拟空间环境,需要遵循以下步骤:1. 选择Web服务器:Apache或Nginx都是常见的选择。建议使用最新版本的服务器软件。2. 安装PHP:从PHP官方网站下载最新版本的PHP,并根据需要进行配置。3. 配置Web服务器:将
2023-05-31

如何在虚拟机搭建php环境

这篇文章主要介绍了如何在虚拟机搭建php环境的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何在虚拟机搭建php环境文章都会有所收获,下面我们一起来看看吧。一、安装虚拟机虚拟机是在本地计算机上模拟一个虚拟的计算
2023-07-06

云虚拟主机环境怎么搭建

搭建云虚拟主机环境可以按照以下步骤进行:1. 选择云服务提供商:根据自己的需求和预算选择合适的云服务提供商。2. 注册账号并选择虚拟主机配置:在云服务提供商的网站上注册账号,并选择虚拟主机配置,包括虚拟机类型、CPU、内存、存储空间等。3.
2023-08-18

python搭建虚拟环境的步骤详解

前言 相信对于python开发人员来说,机器上有不同的python版本是很正常的,因为开发的项目有的用2.6或2.7,有的就要用3.0+版本,如何把这些不同的版本管理好,保持每个环境的干净和独立,方便不同版本之间的切换,这时候就要用到我们的
2022-06-04

怎么给虚拟主机搭建python环境

Python虚拟主机搭建指南在虚拟主机上搭建Python环境需要遵循以下步骤:选择支持Python的虚拟主机提供商。安装Python解释器,如果已预装,则创建虚拟环境。安装项目依赖项,例如Django或Flask。配置Web服务器(如Apache或Nginx)以使用Python应用程序。将应用程序代码部署到虚拟主机。测试和调试应用程序,确保其正常运行。最佳实践包括:使用虚拟环境隔离依赖项。定期更新Python和依赖项。使用版本控制系统跟踪代码更改。设置自动部署管道。部署在staging环境上进行测试,然后
怎么给虚拟主机搭建python环境
2024-04-10

php虚拟服务器环境怎么搭建

搭建 PHP 虚拟服务器环境需要遵循以下步骤:1. 安装 Apache 服务器:从 Apache 官网下载最新版的 Apache 服务器,并按照提示进行安装。2. 安装 PHP:从 PHP 官网下载最新版的 PHP,并按照提示进行安装。3.
2023-05-13

怎么给虚拟主机搭建python环境

要给虚拟主机搭建Python环境,您可以按照以下步骤进行操作:1. 登录到您的虚拟主机的控制面板或通过SSH远程连接到虚拟主机。2. 确保您的虚拟主机上已经安装了Python。您可以通过在终端上运行`python --version`命令来
2023-08-31

windows下python3虚拟环境搭

为了避免安装过多的python工具包导致python目录臃肿,甚至不同包之间不兼容,我们有必要为python安装虚拟python环境——virtualenv。安装了virtualenv,就可以根据任务创建任意数量的小型的虚拟python环境
2023-01-31

编程热搜

目录