PVE手册资料
PVE
软件源/etc/apt/souces.list
apt-get update命令获取软件源中的软件包信息
企业版软件源
/etc/apt/sources.list.d/pve-enterprise.list
如果你没有订阅Proxmox VE企业版,可以将企业版软件源配置信息在软件源配置文件中注释掉(在该行开头插入一个#字符),
以避免系统发出错误提示信息。这种情况下可以配置使用pve-no-subscriptin软件源。
将免费版软件源配置在/etc/apt/sources.list
deb http://download.proxmox.com/debian jessie pve-no-subscription
测试版软件源 /etc/apt/sources.list
deb http://download.proxmox.com/debian jessie pvetest
系统软件升级
apt-get update
apt-get dist-upgrade
Debian使用ifup和ifdown命令来启停网络接口,所有的网络配置信息都保存 在/etc/network/interfaces中
注意:
Proxmox VE并不直接编辑配置文件/etc/network/interfaces 。
实际上,我们会先把网络配置变更保存在临时文件/etc/network/interfaces.new里,
然后在你重启服务器时再 用该配置文件覆盖/etc/network/interfaces。
必须提醒的是,你仍然可以直接编辑配置文件来修改网络配置。Proxmox VE会尽可能跟踪并使用用户设置的最新网络配置。
但仍然推荐使用GUI来调整网络配置,因为这能让你有效避免意外错误。
替换国内源
cd /etc/apt/sources.list.d
mv pve-enterprise.list pve-enterprise.list.bak
wget http://download.proxmox.wiki/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
echo "deb http://download.proxmox.wiki/debian/pve stretch pve-no-subscription" >/etc/apt/sources.list.d/pve-install-repo.list
cat /proc/version #查看系统版本
cd /etc/apt
mv sources.list sources.list.bak
vi 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-get update
apt-get dist-upgrade
apt-get install net-tools -y
配置NTP时间服务器
/etc/systemd/timesyncd.conf
默认配置 [Time]
Servers=ntp1.example.com ntp2.example.com ntp3.example.com ntp4.example.com
重启时钟同步服务后(systemctl restart systemd-timesyncd),你可以查看日志以验证新配置的 NTP服务器是否已被启用
(journalctl –since -1h -u systemd-timesyncd)
外部监控服务器
可以搭建外部监控服务器,外部监控服务器配置信息保存在/etc/pve/status.cfg文件
graphite http://graphiteapp.org
influxdb https://www.influxdata.com/time-series-platform/influxdb
硬盘健康状态监控
Proxmox VE集成了smartmontools软件包
你可以运行如下命令获取磁盘的状态信息:
smartctl -a /dev/sdX
其中/dev/sdX是某个本地磁盘的设备文件名称。
如果命令输出如下结果:
SMART support is: Disabled
你就需要运行以下命令启用 SMART监控:
smartctl -s on /dev/sdX
默认状态下,smartctltools守护进程smartd将会被启动并自动运行,每 30分钟对 /dev/sdX和/dev/hdX进行一次扫描,
如果检测到的错误和警告信息,就向服务器的 root用户发送e-mail。 可以运行man smartd和man smartd.conf命令,以获取关于smartd配置方法的更多 信息。
LVM管理器
pvs
vgs
lvs
默认创建data逻辑卷,并用于存储基于块存储的虚拟机镜像,而/var/lib/vz是根文件系统下的一个路径
目前一个集群最多可拥有32个物理节点(也可以更多,关键在于网络时延)。
使用pvecm可以创建新的集群,可以向集群新增节点,可以从集群删除节点,可以查看集群状态信息,也可以完成其他各种集群管理操作。
Proxmox VE集群文件系统(pmxcfs)用于确保配置信息透明地发送到集群中所有节点,并保持一致。
以集群方式使用Proxmox VE有以下优势:
集中的web管理
多主集群架构:从任何一个节点都可以管理整个集群
pmxcfs:以数据库驱动的文件系统保存配置文件,并通过 corosync在确保所有节点的配置信息实时同步。
虚拟机和容器可方便地在物理服务器节点之间迁移。
快速部署。
基于集群的防火墙和 HA服务
集群部署要求
所有节点必须在同一子网,以便各个节点使用 corosync多播通信 (有些交换机默认设置关闭了 IP多播,需要先手工启用多播通信)#6.0版本单播
如果你需要配置HA,则最少需要3个物理服务器节点,以保证集群多数票机制生效。此外,还需要保证所有节点使用同一版本的Proxmox VE。
我们建议为集群通信分配专用网卡,特别是在配置共享存储的情况下,分配专用网卡能确保集群通信的稳定可靠。
pvecm status
pvecm nodes
为避免虚拟机ID冲突,Proxmox VE规定新节点加入集群前不能配置有任何虚拟机,,新加入节点/etc/pve目录下的原有配置信息将被集群配置全部覆盖。
如果节点上已有虚拟机,可以首先使用vzdump将所有虚拟机备份,然后删除节点上的虚拟机,待加入集群后再用新的虚拟机ID恢复原有虚拟机。
添加位于不同网段的节点
集群网络和该节点在不同网段,你需要使用ringX_addr参数来指定节点在集群网络内使用的地址。
pvecm add IP-ADDRESS-CLUSTER -ring0_addr IP-ADDRESS-RING0
如果你要使用冗余环协议,你还需要设置 ring1_addr 参数以传递第二个集群网络地址。
删除节点(必须在执行删除命令前先关闭待删除节点,并且确保被删除点不再启动 (在原集群网络中)。这是非常非常重要的! )
pvecm delnode hp4
如果你在原集群网络中重新启动被删除的节点,你的集群会因此而崩溃,并且很难恢复到一个干净的状态。
如果出于某种原因,你需要将被删除节点重新加入原集群,需要按如下步骤操作:
格式化被删除节点,并重新安装Proxmox VE。
如前一节所述步骤,将该节点重新加入集群
文件系统恢复
如果你的Proxmox VE服务器出现故障,例如硬件故障,你可以将pmxcfs的数据库文件/var/lib/pve-cluster/config.db复制到一台新的 Proxmox VE服务器。
在新服务器上(没有配置任何虚拟机或容器),停止pve-cluster服务,覆盖config.db文件(需要设置权限为 0600),然后修改/etc/hostname和/etc/hosts和故障服务器对应文件一致,
最后重启新服务器并检查是否恢复正常(不要忘记虚拟机/容器镜像数据)。
将一个节点从集群中删除之后,推荐的做法是重新安装 Proxmox VE。这样可以确保所 有的集群/ssh密钥和共享配置数据都被彻底清除。
从故障节点恢复/迁移虚拟机
对于未配置使用HA的虚拟机而言,如果其磁盘镜像保存在共享存储上:
可以通过将虚拟机配置文件从/etc/pve下故障节点对应目录手工移动到其他正常节点对应目录的方式(从而改变该虚拟机从属的节 点),达到将虚拟机从故障节点手工迁移的目的。
mv /etc/pve/nodes/node1/qemu-server/100.conf /etc/pve/nodes/node2/ #ID为100的虚拟机从故障节点node1迁移到正常节点node2
(使用以上方法迁移虚拟机之前,必须确保故障节点已经确实关机或者被隔离。)
content设置存储服务所要保存的数据类型
images KVM-Qemu虚拟机镜像
rootdir 容器镜像数据
vztmpl 容器模板
backup 虚拟机备份文件
iso ISO镜像
pvesm status
pvesm list
pvesm path
Proxmox VE支持两种 USB直通方法:
基于主机的USB直通
基于SPICE协议的 USB直通
(这种直通方式需要SPICE客户端的支持。如果你给虚拟机添加了SPICE USB端口,
那么就可以直接将SPICE客户端上的USB设备直通给虚拟机使用(例如输入设备或硬件加密狗))
虚拟机管理命令 qm
qm create 300 -ide0 4 -net0 e1000 -cdrom proxmox-mailgateway_2.1.iso
qm start 300
qm shutdown 300 && qm wait 300
qm shutdown 300 && qm wait 300 -timeout 40
虚拟机配置文件保存在Proxmox集群文件系统中,并可以通过路径/etc/pve/qemuserver/.conf访问。
和/etc/pve下的其他文件一样,虚拟机配置文件会自动同 步复制到集群的其他节点。
虚拟机配置文件就是普通文本文件,可以直接使用常见文本编辑器(vi,nano等)编辑。这也是日常对虚拟机配置文件进行细微调整的一般做法。但是务必注意,必须彻底关闭虚拟机,然后再启动虚拟机,修改后的配置才能生效。
更好的做法是使用qm命令或WebGUI来创建或修改虚拟机配置文件。Proxmox VE能够直接将大部分变更直接应用到运行中的虚拟机,并即时生效。该特性称为“热插拔“,并无需重启虚拟机。
Proxmox VE使用 LXC作为底层容器技术。我们把LXC当作底层库来调用,并利用了其众多功能特性。
直接使用LXC相关工具的难度太高,我们将有关工具进行了包装, 以“Proxmox容器管理工具”的形式提供给用户使用,该工具的名字是pct。
容器管理工具pct和Proxmox VE紧密集成在一起,不仅能够感知Proxmox VE集群环境,而且能够象虚拟机那样直接利用 Proxmox VE的网络资源和存储资源。
你甚至可以在容器上配置使用 Proxmox VE防火墙和HA高可用性。
我们的主要目标是提供一个和虚拟机一样的容器运行环境,同时能避免不必要的代价。 我们称之为“系统容器”。
注意
如果你想运行微容器(如docker,rkt等),最好是在虚拟机里面运行它。
你既可以为集群内的所有主机设置防火墙策略,也可以为单个虚拟机和容器定义策略。
防火墙宏, 安全组,IP集和别名等特性将大大简化策略配置管理。 尽管所有的防火墙策略都保存在集群文件系统,但基于 iptables的防火墙服务在每个节点都是独立运行的,从而为虚拟机提供了完全隔离的防护。这套分布式部署的防火墙较传统防火墙提供了更高的带宽。
Proxmox VE防火墙将网络划分为不同区域 : HOST VM
集群级别的防火墙配置
/etc/pve/firewall/cluster.fw
启用防火墙后,默认所有主机的通信都将被阻断。唯一例外是集群网络内的WebGUI(端口8006)和ssh(端口22)访问可以继续使用
为简化配置,你可以创建一个名为“管理地址”的IPSet,并把所有的远程管理终端IP地址添加进去。这样就可以创建策略允许所有的远程地址访问 WebGUI。
主机级别的防火墙配置
/etc/pve/nodes//host.fw
该文件中的配置可以覆盖cluster.fw中的配置
虚拟机和容器级别的防火墙配置
/etc/pve/firewall/.fw
每个虚拟网卡设备都有一个防火墙启用标识。你可以控制每个网卡的防火墙启用状态。 在设置启用虚拟机防火墙后,你必须设置网卡上的防火墙启用标识才可以真正启用防火墙。
防火墙需要网络设备标识配置的配合,在启用网卡的防火墙标识后你必须重启虚拟机或容器才可以。
安全组是一个防火墙策略的集合。安全组属于集群级别的防火墙对象,可用于所有的虚拟机防火墙策略。
服务及管理命令
pve-firewall start/stop/status
Proxmox VE端口列表
Web界面:8006
VNC控制台:5900-5999
SPICE proxy:3128
sshd(用于集群管理):22
rpcbind:111
corosync多播(集群通信使用):5404, 5405 UDP
LXC vs LXD vs Proxmox容器 vs Docker
LXC是Linux内核容器的用户空间接口。通过强大的 API和易用的工具,Linux用户能够轻松地创建并管理系统容器。LXC,及其前任OpenVZ,专注于系统虚拟化,也就是让你在容器内运行完整的操作系统,其中你可以ssh方式登录,增加用户,运行apache服务器等。
LXD基于LXC创建,并提供了更好的用户体验。在底层,LXD通过liblxc调用 LXC 及其Go绑定来创建和管理容器。LXD基本上是LXC工具和模版系统的的另一个选择,只是增加了诸如远程网络控制等新的特性。
Proxmox容器也专注于系统虚拟化,并使用LXC作为其底层服务。Proxmox容器工具称为pct,并和Proxmox VE紧密集成在一起。这意味着 pct能够利用集群特性,并像虚拟机那样充分利用相同的网络和存储服务。你甚至可以使用Proxmox VE防火墙,备份和恢复,设置容器HA。可以使用Proxmox VE API通过网络管理容器的全部功能。
Docker专注于在容器内运行单一应用。你可以用 docker工具在主机上管理 docker 实例。但不推荐直接在Proxmox VE主机上运行docker。
PVE手册资料的更多相关文章
- HTML5 Cheat sheet PNG帮助手册(标签、事件、兼容)
HTML5 Cheat sheet PNG帮助手册(标签.事件.兼容) 1.HTML5标签 2.HTML5事件 3.HTML5兼容 最新HTML5手册资料请参考:http://www.inmotion ...
- 乱七八糟的学习资料汇总(python3.x,pyqt,svn,git)
入门涉猎资料: python3.6.3中文文档:https://www.runoob.com/manual/pythontutorial3/docs/html/interpreter.html pyt ...
- mysql的缓冲查询和非缓冲查询
最近在开发一个PHP程序时遇到了下面的错误: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 错误信息显示允许的 ...
- Altera 在线资源使用
Altera 在线资源使用 Altera 在线资源使用 1 1.Altera中文版 2 2.建立myaltera账户 获取官网信息与支持 2 3系统化的设计资源 2 3.1.设计实例 2 3.2.参考 ...
- 深入解析 composer 的自动加载原理 (转)
深入解析 composer 的自动加载原理 转自:https://segmentfault.com/a/1190000014948542 前言 PHP 自5.3的版本之后,已经重焕新生,命名空间.性状 ...
- 让你系统的了解shell
当你在进行登录时,系统会检查的文档:1. /etc/profile:首先,系统会检查这个文件,以定义如下这些变量:PATH.USER.LOGNAME.MAIL.HOSTNAME.HISTSIZE.IN ...
- STM32窗口看门狗和独立看门狗的区别,看门狗介绍及代码演示
一.介绍: STM32看门狗分为独立看门狗和窗口看门狗两种,其两者使用调条件如下所示, IWDG和WWDG两者特点如下图所示: 独立看门狗的手册资料: 窗口看门狗的手册资料: ...
- 【转】简谈基于FPGA的千兆以太网
原文地址: http://blog.chinaaet.com/luhui/p/5100052903 大家好,又到了学习时间了,学习使人快乐.今天我们来简单的聊一聊以太网,以太网在FPGA学习中属于比较 ...
- 深入解析 composer 的自动加载原理
PHP 自5.3的版本之后,已经重焕新生,命名空间.性状(trait).闭包.接口.PSR 规范.以及 composer 的出现已经让 PHP 变成了一门现代化的脚本语言.PHP 的生态系统也一直在演 ...
随机推荐
- JS数据结构第一篇---算法之复杂度判断
1.算法:算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作. 那么一个怎样的算法才能称得上是好算法,也就是说有没有什么标准来评判一个算法的好坏? 在此之 ...
- linux lnmp安装2个版本PHP教程
linux lnmp安装2个版本PHP教程我原先装了5.6版本的PHP 后来想装个PHP7.0.14版本 一方面看看稳定性 另一方面看看性能怎么样 其实原理很简单 php-fpm开启了1个端口来管理P ...
- MySQL常见的应用异常记录
>>Error Code: 1045. Access denied for user 'test'@'%' (using password: YES) 使用MySQL的select * i ...
- 【Linux】CentOS7 打开关闭防火墙及端口
一.centos7版本对防火墙进行加强,不再使用原来的iptables,启用firewalld1.firewalld的基本使用启动: systemctl start firewalld查状态:syst ...
- K8S学习笔记之Pod的Volume emptyDir和hostPath
0x00 Volume的类型 Volume是Kubernetes Pod中多个容器访问的共享目录. Volume被定义在Pod上,被这个Pod里的多个容器挂在到相同或不同的路径下. Volume的生命 ...
- Implementing Azure AD Single Sign-Out in ASP.NET Core(转载)
Let's start with a scenario. Bob the user has logged in to your ASP.NET Core application through Azu ...
- WPF USB设备采集开源工具介绍
最近项目需要需要试试采集电脑USB 设备信息 找到了 开源 示例 代码非常好 公共库也很友好 可能知名度太低 才4star https://github.com/vurdalakov/usbd ...
- Phoenix连接安全模式下的HBase集群
Phoenix连接安全模式下的HBase集群 HBase集群开启安全模式(即启用kerberos认证)之后,用户无论是用HBase shell还是Phoenix去连接HBase都先需要通过kerber ...
- json文件 乱码问题 根本解决办法
1 工具→自定义:2 点击 命令 标签:3 在上方单选区选中 菜单栏,下拉列表选 文件:4 点击 添加命令5 在类别中,找到文件,在右侧找到高级保存选项,确定6 然后可以通过下移调整该选项在文件菜单中 ...
- 完全图解 HTTPS
安全基础 我们先来看下数据在互联网上数据传递可能会出现的三个比较有代表性的问题,其实后面提到的所有方法,都是围绕解决这三个问题而提出来的. 窃听 伪造 否认 对称密钥加密 假设 A 正在通过互联网向 ...