本环境为刚搭建的空环境,未创建VM,已配置CEPH存储。上图箭头所指就是要修改的名字。
1、安装WinSCP,WinSCP登陆两台节点(或者SSH登陆,使用VI编辑器修改)
分别修改下方四个文件里的主机名并保存,推荐使用Notepad3编辑器(勿用记事本修改)。
/etc/hostname /etc/hosts /etc/postfix/mail.cf /etc/pve/corosync.conf
zfs的raid,就像软raid,通过计算机的计算来实现raid,但是缓存从哪里来?内存啊,速度比硬盘快的多,而sun的 Solaris,以前就是怪物一样的超级大内存,所以ZFS在设计的时候,就很耗内存,移植到linux之后还带着这样的基因,占用50%的物理内存做zfs缓存。
我的32G内存,就占了一半多一点,系统还得占点。
arcstat,pve管理界面,这些地方都能看到。
这就是ZFS允许减小允许使用ARC大小的最大大小的原因。此设置在/etc/modprobe.d/zfs.conf
文件中完成。
例如,如果您希望ARC永远不要超过32 GB,请添加以下行:
options zfs zfs_arc_max=34359738368
# 设置为1G options zfs zfs_arc_max=1073741824
简单设置命令为:
echo "options zfs zfs_arc_max=1073741824" >> /etc/modprobe.d/zfs.conf
根据你的物理内存,自己计算吧,1G:1*1024*1024*1024*1024
如果根文件系统也使用了ZFS,你必须在每次修改该参数后更新initramfs,如下:
update-initramfs -u
内存占用从16G多变成1G多了。
你就自己看arcstat或PVE的管理界面吧。
pvekclean
,请先安装git clone https://github.com/jordanhillis/pvekclean.git cd pvekclean chmod +x pvekclean.sh
安装完成后执行pvekclean
即可
./pvekclean.sh
echo 'deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription' >> /etc/apt/sources.list.d/pve-no-subscription.list
apt update -y && apt dist-upgrade -y
apt-get update && apt-get install vim lrzsz unzip net-tools curl screen uuid-runtime git -y && apt dist-upgrade -y
sed -i_orig "s/data.status === 'Active'/true/g" /usr/share/pve-manager/js/pvemanagerlib.js sed -i_orig "s/if (res === null || res === undefined || \!res || res/if(/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js sed -i_orig "s/.data.status.toLowerCase() !== 'active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js systemctl restart pveproxy
reboot
E: Sub-process /usr/bin/dpkg returned an error code
方案是用zfs做raid0,并且把zfs作为proxmox的根文件系统。那现在问题就来了,想实现这一套方案的话,安装proxmox就只能用iso来装了,但是这机器没有ipmi,咋办呢?
好在kimsufi后台还提供了一个基于debian的救援系统!我们可以在这个救援系统里面安装kvm然后把硬盘直通给虚拟机来安装proxmox。这里就记录一下折腾的过程。
首先登录到kimsufi的后台,把这个监控关了:
这里说下为啥要把这个关了,因为如果你开着这个,到时候装系统要是配置哪里出了问题导致机器网络不通的话,你在后台执行硬重启会卡很久,因为它这个监控会ping你的机器ip,如果不通的话就会卡很久才有反应,很浪费时间,所以这里先关了,后面等配置全部好了后再打开。
接着点右上角的Netboot,在里面选择Rescue,然后点Next:
点Confirm:
再点右上角的Restart执行硬重启,等待片刻,邮箱里面会收到救援系统的ssh登录ip/账号/密码。
登录到救援系统内,首先查看硬盘的基本情况:
lsblk
可以看到之前系统做了raid1:
查看阵列状态:
mdadm --detail /dev/md127
可以看到这个阵列当前正在工作:
我们需要先停止这个阵列:
mdadm --stop /dev/md127
然后删除两块硬盘的分区表:
wipefs -a /dev/sda wipefs -a /dev/sdb
在这个救援系统内查看机器的公网ip,并记录备用:
ip a
回显类似:
eth0:... link/ether ... inet xx.xx.xx.xx ...
查看网关ip:
ip route list
回显类似:
default via xx.xx.xx.xx dev eth0
查看dns:
cat /etc/resolv.conf
回显类似:
nameserver 213.186.33.99
查看机器的ipv6地址:
ip -6 a
回显类似:
查看机器的ipv6网关:
ip -6 route list
回显类似:
kimsufi的网站上虽然标明每台机器只有/128的ipv6,但实际可用应该是/64,为了后续的步骤能够正常进行,这里先简单检查一下机器到底能用多少个ipv6,可以先往机器的主网卡接口添加一个ipv6测试:
ip addr add 2001:41d0:x:xxxx::2/128 dev eno1
在别的机器上能p
今天新装了台pve设备,发现安装ufw后小鸡无法正常联网及解析域名,后来尝试调整UFW配置文件,解决了这个问题,具体方法如下:
在PVE母鸡编辑UFW配置:
nano /etc/default/ufw
将DEFAULT_FORWARD_POLICY="DROP"
改为DEFAULT_FORWARD_POLICY="ACCEPT"
更改默认的策略,允许UFW接受网络转发数据包
本环境为刚搭建的空环境,未创建VM,已配置CEPH存储。上图箭头所指就是要修改的名字。
分别修改下方四个文件里的主机名并保存,推荐使用Notepad3编辑器(勿用记事本修改)。
/etc/hostname /etc/hosts /etc/postfix/mail.cf /etc/pve/corosync.conf
首先在待隔离节点上停止 pve-cluster 服务:
systemctl stop pve-cluster.service systemctl stop corosync.service
然后将待隔离节点的集群文件系统设置为本地模式:
pmxcfs -l
接下来删除 corosync 配置文件:
rm /etc/pve/corosync.conf rm -rf /etc/corosync/*
最后重新启动集群文件系统服务:
killall pmxcfs systemctl start pve-cluster.service
重启pveproxy服务
systemctl restart pveproxy
可以使用pct工具直通lxc容器内,进行操作:
#List all lxc container: pct list #Enter into a container (without password) pct enter <VMID>
或使用lxc-attach命令
lxc-attach <VMID>