昨天看到kimsufi出了一款还不错的特价独服就买了,整体来说还不错。美区下单直接免税,虽然汇率下来比欧元贵几块钱吧,但也无所谓了,省去申请免税的麻烦了。付款后几分钟就开机了,有点出乎意料,以为要等很久。。
机器拿到手后肯定就是要装个系统了,虽然kimsufi后台有非常全的系统模板,也可以调整分区方案,但还是不太好用,2x2T的盘子默认装系统的话是做raid1,我想全部都做成raid0就没办法做,因为它这个后台分区强制根必须是raid1。
其次我打算把zfs用作proxmox的根文件系统,因为这两块盘子都是古董了,我觉得就算做raid0的话性能也就那样,但是机器本身有32g内存,这么多内存放着不用也是浪费,不如喂给zfs。
所以最终我选择的方案就是用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
记住这些,待会安装的时候需要用到。
安装kvm:
apt -y update apt -y install qemu qemu-kvm
下载proxmox的iso:
wget http://download.proxmox.com/iso/proxmox-ve_7.1-1.iso
启动虚拟机:
qemu-system-x86_64 -enable-kvm -nodefaults -cdrom /root/proxmox-ve_7.1-1.iso -hda /dev/sda -hdb /dev/sdb -cpu host -smp 4 -m 8G -net nic -net user -vga std -vnc 127.0.0.1:0 -usbdevice tablet -k en-us
现在需要配置一个ssh隧道,用来访问虚拟机的vnc。当然如果你嫌麻烦,不怕安全问题的话可以把上面的vnc地址监听到0.0.0.0,这样就可以直接访问了。我这里为了安全起见还是用ssh隧道访问了。下面就用xshell示范一下如何建立ssh隧道。
在登录这台救援系统的ssh会话里面打开下图这个界面:
然后按照下图填写,33321端口可以任意修改,只要本地没有占用这个端口即可:
像这样配置好了后再新打开一个ssh会话连接,隧道就建立好了。之后可以用vnc客户端连接:
正常的话就能看到proxmox的安装界面了:
一步一步跟着安装进程走,到硬盘这里,选择zfs(raid0):
网络配置这里,把之前查看得到的ip/网关/dns填写上去:
确认无误后开始安装:
安装完成后,登录到proxmox的控制台,编辑grub配置文件:
nano /etc/default/grub
修改如下配置,加入net.ifnames=0 biosdevname=0内核启动参数:
GRUB_CMDLINE_LINUX_DEFAULT="quiet net.ifnames=0 biosdevname=0"
更新grub:
update-grub
然后编辑网卡配置文件:
nano /etc/network/interfaces
默认的配置应该是这样:
auto lo iface lo inet loopback iface ens3 inet manual auto vmbr0 iface vmbr0 inet static address xx.xx.xx.xx/24 gateway xx.xx.xx.xx bridge-ports ens3 bridge-stp off bridge-fd 0
改为:
auto lo iface lo inet loopback iface eth0 inet manual auto vmbr0 iface vmbr0 inet static address xx.xx.xx.xx/24 gateway xx.xx.xx.xx bridge-ports eth0 bridge-stp off bridge-fd 0 auto vmbr1 iface vmbr1 inet static address 192.168.0.1 netmask 255.255.255.0 bridge_ports none bridge_stp off bridge_fd 0 post-up echo 1 > /proc/sys/net/ipv4/ip_forward post-up iptables -t nat -A POSTROUTING -s '192.168.0.0/24' -o vmbr0 -j MASQUERADE post-down iptables -t nat -D POSTROUTING -s '192.168.0.0/24' -o vmbr0 -j MASQUERADE
这里解释一下为何这么配置。首先是加了net.ifnames=0 biosdevname=0这两个内核启动参数,让网卡接口的命名强制统一变为ethX。
这样做可以解决机器重启后找不到网卡接口的问题。因为通过虚拟机安装的proxmox网卡名和宿主机的网卡名是对不上的。
kimsufi不能加ip,要开小鸡只能开nat,所以下面的vmbr1是为nat小鸡准备的。
做完这些改动后,把运行这台proxmox的虚拟机关机:
systemctl poweroff
回到kimsufi的控制台,把系统启动模式改为从硬盘启动:
再点右上角的restart执行硬重启。等待片刻,如果一切正常的话,现在应该就可以访问到proxmox的webui了:
最后简单来个bench:
有点遗憾的是,本文没有涉及到ipv6的配置,因为我当时忘记查看原系统ipv6相关的信息了,不知道网关ip之类的信息也就没办法配置ipv6,等有空重装看看吧。
最新评论
5211314
能不能教我 一点不会