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 的生态系统也一直在演 ...
随机推荐
- 【Linux脚本学习案例】shell脚本多通道并发执行存储过程
使用shell脚本开启多个子任务并发调用存储过程,存储过程按照通道处理数据,提高效率: 外层调用脚本: #!/bin/sh #------------------------------------- ...
- Shell脚本之六 数学计算
前面一节Shell篇之五 基本运算符介绍了常见的 Shell 算术运算符,这节介绍 Shell 的数学计算.Shell 和其它编程语言不同,Shell 不能直接进行算数运算,必须使用数学计算命令. 下 ...
- [转帖]Centos7防火墙配置rich-rule实现IP端口限制访问
Centos7防火墙配置rich-rule实现IP端口限制访问 2019-02-18 18:05:35 sunny05296 阅读数 2143 收藏 更多 分类专栏: Linux 版权声明:本文 ...
- Android工具使用之UiAutomatorViewer
学习博客: https://blog.csdn.net/l403040463/article/details/79235670 使用, 添加web 网页的监控.
- 报错 xxx@1.0.0 dev D:\> webpack-dev-server --inline --progress --configbuild/webpack.dev.conf.js
是因为node_modules有意外改动,导致依赖库不完整. 解决:1.删除项目下的node_modules,在你的项目目录下 重新执行npm install,这会重新生成node_modules, ...
- LOJ2257 SNOI2017 遗失的答案 容斥、高维前缀和
传送门 数字最小公倍数为\(L\)的充分条件是所有数都是\(L\)的约数,而\(10^8\)内最多约数的数的约数也只有\(768\)个.所以我们先暴力找到所有满足是\(L\)的约数.\(G\)的倍数的 ...
- python操作jenkins、python-jenkins api
Jenkins作为最流行的自动化流程的核心工具,我们使用它自带的web-ui完全可以满足日常的构建及发布工作,但是如果需要和其他系统做集成就必须二次开发或者通过API方式进行交互了. Jenkins介 ...
- WebApi验证
如何实现RESTful Web API的身份验证 最近想拿一个小项目来试水RESTful Web API,项目只有几个调用,比较简单,但同样需要身份验证,如果是传统的网站的话,那不用说,肯定是用户 ...
- python基础04--list,cou,dict
1.1 列表list 1.列表可以完成大多数集合类的数据结构实现.列表中元素的类型可以不相同,它支持数字,字符串,列表,元组,集合,字典 2.列表是有序的, 可以索引,切片 3.List中的元素是可以 ...
- Java自学-操作符 逻辑操作符
Java的逻辑运算符 逻辑运算符 示例 1 : 长路与 和 短路与 无论长路与还是短路与 两边的运算单元都是布尔值 都为真时,才为真 任意为假,就为假 区别: 长路与 两侧,都会被运算 短路与 只要第 ...