Menu Close

proxmox部署

proxmox介绍

Proxmox VE 是基于QEMU/KVM和LXC的开放源码服务器虚拟化管理解决方案。可以使用集成的、易于使用的Web接口或CLI管理虚拟机、容器、集群、存储和网络,PVE有方便易用的WEB界面,用户可通过网页的方式来管理服务器上使用 kvm 以及 lxc 技术运行的虚拟机。同时提供了一些先进功能的支持,如集群、HA等。PVE虽然是开源,却是由一个商业公司在运营、更新以及维护。

启动盘准备

1、下载U盘写盘软件

官方网站:https://rufus.ie/(目前比较好用的写盘软件,WIN10也是用着装)

2、下载PVE ISO文件

官方下载:https://www.proxmox.com/en/downloads(速度比较慢)

3、写入PVE,比较简单,基本跟win安装盘一样,选项基本默认,要注意选择DD镜像模式,不然U盘启动后找不到安装文件;

安装PVE

进入ISO启动

选择“Install Proxmox VE”

同意协议

点击“I agree”

选择硬盘

点击“Next”

设定国家、时区和键盘

Country输入China即可,点击“Next”

设置管理员root账号密码和邮箱

设定主机名,IP,网关,掩码和DNS

安装完提示重启

(重启前请先移除ISO启动)

启动控制台

启动完成后的控制台,会提示控制台访问URL

PVE默认端口为8006

可以导入自己的SSL证书

 PVE安装完毕

进入系统界面

屏蔽订阅提示

虽然是免费试用的,但是有高级功能订阅,而且是每次登录强制弹出,所以我们第一步要做的就是把这个提示去掉。

vi /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js

                    if (res === null || res === undefined || !res || res

                        .data.status.toLowerCase() !== ‘active’) {

                        Ext.Msg.show({      #改为Ext.Msg.noshow

                            title: gettext(‘No valid subscription’),

                            icon: Ext.Msg.WARNING,

                            message: Proxmox.Utils.getNoSubKeyHtml(res.data.url),

                            buttons: Ext.Msg.OK,

systemctl restart pveproxy

NTP时间同步

这是一个很容易被忽视的问题。如果组建多机Proxmox集群,务必要确保所有服务器的时间同步。如果时间不同步,很可能会遇到登录认证失败,虚拟机迁移失败等等各种稀奇古怪的问题。

保持时间同步,最方便的方法就是开启Proxmox的NTP客户端,和同一个时间服务器同步。配置方法很简单,就是在/etc/ntp.conf文件中添加一行“server NTP服务器IP地址”,然后执行systemctl restart ntp.service,重启Proxmox上的NTP客户端即可。

上传镜像

 创建集群

pvecm create ops-cluster

查看集群状态:

pvecm status

查看node节点

设置时间:

timedatectl set-timezone Asia/Shanghai

登录其他节点加入集群:

pvecm add 10.0.0.60

proxmox国内源设置

#删除企业源

rm -rf /etc/apt/sources.list.d/pve-enterprise.list

##下载秘钥

wget http://download.proxmox.com/debian/proxmox-ve-release-5.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg

#添加社区源

echo “deb http://download.proxmox.wiki/debian/pve stretch pve-no-subscription” >/etc/apt/sources.list.d/pve-install-repo.list

建议同时使用国内debian源

vim /etc/apt/sources.list

deb http://mirrors.aliyun.com/debian/ stretch main non-free contrib

deb-src http://mirrors.aliyun.com/debian/ stretch main non-free contrib

deb http://mirrors.aliyun.com/debian-security stretch/updates main

deb-src http://mirrors.aliyun.com/debian-security stretch/updates main

deb http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib

deb-src http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib

deb http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib

deb-src http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib

最后执行

apt update

#apt update&&apt dist-upgrade #如需升级pve,则执行该命令

磁盘健康状况

即使使用了健康且冗余的存储设备,但存储设备的运行状况仍然需要监控,如:温度、异常等

从Proxmox VE 4.3开始, 已安装并需要软件包smartmontools。这是一组监视和控制本地硬盘的SMART系统的工具。

使用smartctl命令

获取磁盘的状态:

smartctl -a /dev/sda 

说明S.M.A.R.T 检测守护程序关闭状态

可以使用以下命令启用它:

有关如何使用smartctl的更多信息,请参见man smartctl

 smartctl -H /dev/sda

ceph部署

ceph更换国内源

国内源:

echo “deb https://mirrors.ustc.edu.cn/proxmox/debian/pve buster pve-no-subscription” > /etc/apt/sources.list.d/pve-no-subscription.list     #中科大源

echo “deb http://download.proxmox.wiki/debian/pve stretch pve-no-subscription” >/etc/apt/sources.list.d/pve-install-repo.list     #Proxmox中文社区源

sed -i.bak “s#http://download.proxmox.com/debian#https://mirrors.ustc.edu.cn/proxmox/debian#g” /usr/share/perl5/PVE/CLI/pveceph.pm     #中科大源   

sed -i.bak “s#http://download.proxmox.com/debian#https://download.proxmox.wiki/debian#g” /usr/share/perl5/PVE/CLI/pveceph.pm     #Proxmox中文社区源

sed -i.bak “s#ftp.debian.org/debian#mirrors.aliyun.com/debian#g” /etc/apt/sources.list     #阿里Debian源

sed -i “s#security.debian.org#mirrors.aliyun.com/debian-security#g” /etc/apt/sources.list     #阿里Debian源

sed -i.bak “s#ftp.debian.org/debian#mirrors.163.com/debian#g” /etc/apt/sources.list     #163Debian源

sed -i “s#security.debian.org#mirrors.163.com/debian-security#g” /etc/apt/sources.list     #163Debian源

ceph安装

pveceph install

创建mon

删除mon命令:

ceph mon rm proxmox62

创建OSD

直接打开某个节点,创建OSD盘必须是未分区的,所以若是未创建OSD磁盘找不到分区的话,是因为安装系统的时候只对sda进行格式化了,需要fdisk /dev/sdv 然后按d删除分区,再按w保存分区.

新增硬盘然后格式化硬盘:mkfs.ext4 /dev/sda

重新创建OSD

创建pool存储池

HA

创建群组

创建虚拟机

做集群测试,因此不选择本地lvm,存储选择cluster

虚拟机磁盘扩容

fdisk -l

创建分区:

fdisk /dev/sda

重启服务器:重要的事情说三遍:重启服务器、重启服务器、重启服务器

执行:pvcreate /dev/sda3 创建物理卷

执行:vgcreate amfslvm2 /dev/sda3 创建卷组

查看卷组:vgscan

合并卷组:vgmerge centos amfslvm2

查看

df -Th

查看卷组是否合并:pvdisplay

执行:lvresize -L +168G /dev/mapper/centos-root 给这个路径添加磁盘容量

查看:df -h 看到容量没有添加

识别分区大小

执行:resize2fs /dev/mapper/centos-root 没有执行成功

报错了说明分区格式不是这个类型的

再执行:xfs_growfs /dev/mapper/centos-root 执行成功

再次查看 df -h

备份和快照

备份

恢复备份

快照

虚拟机迁移

VM102目前在proxmox61这台服务器上:

右键,点击迁移:

提示挂载了CD/DVD

选择“硬件”,编辑CD/DVD,勾选“不适用任何介质”

选择迁移目标主机:

VM102已迁移至proxmox60服务器

proxmox删除节点

查看集群节点:

pvecm nodes

pvecm delnode proxmox

所有节点都有自己的目录(例如,VM的清单),目录/etc/pve/nodes/在所有群集节点之间同步。

直到节点目录位于目录/etc/pve/nodes/中,该删除的节点仍在GUI中可见。

如果要从Proxmox GUI中删除先前删除的节点,则只需删除目录/etc/pve/nodes/NodeName。

mv /etc/pve/nodes/proxmox /tmp/proxmox

proxmox节点修改IP

vi /etc/network/interfaces

root@proxmox11:~# cat /etc/network/interfacesauto lo

iface lo inet loopback

iface eno1 inet manual

auto vmbr0

iface vmbr0 inet static

address 10.0.0.11/24 修改为:address 10.0.0.12/24

gateway 10.0.0.1

bridge_ports eno1

bridge_stp off

bridge_fd 0

iface eno2 inet manual

iface eno3 inet manual

iface eno4 inet manual

vi /etc/issue

——————————————————————————

Welcome to the Proxmox Virtual Environment. Please use your web browser to

configure this server – connect to:

https://10.0.0.11:8006/ 修改为: https://10.0.0.12:8006/


重启PVE

发表回复