Hetzner使用SolusVM开设KVM架构的独立IP小鸡

SolusVM相信经常买OneManIDC小鸡的人来说,都不会很陌生吧,市面上很多小学生IDC都是用的这套系统,我们在开始之前,先简要介绍一下SolusVM。

SolusVM是一套国外的服务器虚拟化管理软件,主要分为主控(Master)、被控(Slaves)两个部分。主控提供图形化的WEBUI用来控制被控,主控一般情况下,我们可以随便找一台VPS安装,但被控则必须安装在独立服务器内。另外主控可以控制多个被控,实现虚拟化集群管理等一系列功能。

SolusVM不是一款免费的软件,它的授权价格是主控10刀一月,被控2.5刀一月。请注意被控数量可以无限制的购买,2.5刀一月是单价。也就是说,如果你打算在一台独立服务器上开小鸡,那么你一个月最少就要用12.5刀。如果你有多台独立服务器则需要再另外买被控授权。另外,SolusVM官方提供30天的免费试用授权,试用授权提供一个主控+5个被控,如果你是新手,可以先申请一个免费的授权使用。

如果你能把这篇文章接下来所写的内容全部都学会,那么你已经具备做一个OneManIDC的能力了,如果你真的打算做IDC了,千万别给OneMan这个词丢脸哦,要知道OneManIDC也有做的很不错的,但如果你做不好,难免就要被人称呼为“小学生IDC”了,这取决于你对这个行业的热情和诚信。

本文所使用的环境:

Hetzner独立服务器X1
LinodeVPSX1
CentOS7X64

首先我们来安装被控,我们登录到Hetzner后台,激活救援模式:

然后还是和往常一样,执行硬重启:

重启完成后,使用Xshell,登录到救援系统内,执行命令:

installimage

如图所示:

选择CentOS:

选择7.4版本:

做RAID0:

接下来到了一个非常关键的地方了,就是使用LVM进行硬盘分区,我们需要注意的是SolusVM只需要我们创建卷组(VG)即可,剩下的硬盘空间SolusVM会根据虚拟机所需的硬盘大小来自动划分。所以我们分区的时候,只把CentOS必要的文件系统分出来,其他的空间全部不划分,如图所示:

确认你的分区配置没问题后,按键盘F10,保存然后就是按几个回车,程序就会自动帮你装系统了。安装完成后,执行命令重启:

reboot

如图所示:

重启完成后,就可以登录到刚新装的CentOS7内了,可以看到硬盘只划分了100G,我这台独立服务器是6T的硬盘,剩下的容量这里都没有显示挂载,那么就是正常的:

现在我们就可以在这台独立服务器内安装SolusVM被控了,执行如下两条命令即可开始安装:

wget https://files.soluslabs.com/install.sh
sh install.sh

看到如下界面后,因为我们是要开KVM的机器,然后我们要装的是被控,所以这里我们键入2回车:

接下来就是等了,大概5分钟左右,安装就可以完成,成功后会回显给你这台被控的KEY和密码信息,这两个信息务必要妥善保管:

如果你是开OpenVZ的小鸡,那么可以说SolusVM是开箱即用的,但我们要开的是全虚拟化的KVM,这里我们就还需要手动配置网卡的桥接。在Hetzner的独立服务器上,我这里给出一个可行的桥接方案。(不保证在别的独立服务器上也可用,因为每个服务器的网络环境都不同)

安装桥接依赖,这个其实SolusVM自动安装的时候应该是已经装好了的:

yum -y install bridge-utils

开ipv4转发:

echo 1 > /proc/sys/net/ipv4/ip_forward

新建一个桥接网卡命名为br0

vi /etc/sysconfig/network-scripts/ifcfg-br0

写入:

DEVICE=br0
TYPE=Bridge
BOOTPROTO=none
IPADDR=你的服务器公网IP
NETMASK=子网掩码
SCOPE="peer 你的服务器网关地址"
ONBOOT=yes
DELAY=0
IPV6INIT=yes
IPV6ADDR=你的服务器IPV6地址/64
IPV6_DEFAULTGW=fe80::1
IPV6_DEFAULTDEV=br0

注:上面这些需要修改的信息,可以查看你默认的公网网卡得到,把相应的信息改好就行了。

因为Hetzner用的是路由模式,和很多大众机房联网的方式不一样,所以还要新建一个路由:

vi /etc/sysconfig/network-scripts/route-br0

写入:

ADDRESS0=0.0.0.0
NETMASK0=0.0.0.0
GATEWAY0=你的服务器网关地址

接着重启网络服务,这一步非常关键!一定要先重启一遍,让机器能够识别出我们新加入的网卡信息:

/etc/init.d/network restart

然后查看你现有公网IP的那个网卡名是什么:

ifconfig

可以看到我这台的名字是enp4s0,另外我们之前新配置的br0网卡也能在这里显示出来了:

接着我们修改原来默认的公网网卡配置:

vi /etc/sysconfig/network-scripts/ifcfg-enp4s0

清空这个配置文件,把里面的内容替换成:

DEVICE=enp4s0
HWADDR=你的机器MAC地址
IPV6INIT=yes
ONBOOT=yes
BRIDGE=br0

注:MAC地址就是你主网卡的MAC地址,我这里的就是enp4s0的MAC地址,用ifconfig查看,ether后面的值就是MAC地址。

接着我们再重启一次网络服务:

/etc/init.d/network restart

这样我们就把机器的桥接配置好了,最终的网卡信息现在应该是这样的:

至此,SolusVM的被控端我们就配置完成了,接下来是主控的安装。

首先我们要把主控装到另外一台VPS上,我个人建议主控和被控的网络连通性要比较好才行,以免后期在生产环境的时候出现一些不必要的麻烦。比如我现在的被控是一台德国机器,那么用来搭建主控的VPS最好也是德国的,所以我这里选择把主控装在Linode的德国机房。

安装主控和安装被控需要执行的命令是一模一样的:

wget https://files.soluslabs.com/install.sh
sh install.sh

只不过在Linode上,因为系统比较精简,可能连wget都没有,所以先装一个wget:

yum -y install wget

OK,你现在应该可以顺利看到一个熟悉的界面,只不过这次我们要选择1:

稍等片刻,程序安装完成后,会回显给你主控面板的各类信息,如图所示:

默认的管理员账号密码都是vpsadmin,

我们登录进去首先要输入授权码,授权成功后如图所示:

接着更改系统默认的管理员密码:

现在我们就需要把主控和被控进行对接了。首先点击Nodes-Add Node,然后按如下图格式填写:

注:

1、LV Group这个值,一定要填写和我们之前分区指定的名字一样,我最开始配置LVM的时候,用的卷组名就是vg0,所以这里也要填vg0,如果你不是用的这个名字,就要自行更改。

2、IP地址填你的独立服务器IP地址,也就是被控的IP地址。

3、KEY和密码就是之前你装被控完成后回显给你的那些信息。

被控添加完成后,我们现在来加下IP。首先点击IP Blocks-Add IPv4 Block,然后按如图填写:

注:

1、在这个配置里面,只需要注意把Gateway(网关)IP填写正确即可,这个网关IP就是之前被控网卡配置文件route-br0里面的IP地址。

2、Node这里一定要勾选上我们刚才新添加的,这里我是HZE36T。

现在我们就可以在这个IP Blocks里面加IP了:

这里有一个问题,由于Hetzner的IP策略是IP必须绑定一个MAC地址的,所以我们在SolusVM后台配置这里不能用自动生成MAC的模式,一定要把MAC改成Hetzner绑定的那个。

首先我们在Hetzner后台找到你买的IP,后面有一个电脑的小图标,点击它:

这样Hetzner就会给这个IP绑定一个物理的MAC地址,如图所示:

然后我们就可以把这个MAC地址绑定到我们刚添加的IP上了,首先点击如图所示位置:

添加一下即可:

现在我们来准备一些KVM系统模版,SolusVM官方默认是提供一些系统模版的,我们可以到这里查看:

https://tdn.solusvm.com/

假设这里我要配置一个CentOS7的模版,就在主控服务器内执行如下命令:

wget http://templates.repo.onapp.com/solusvm/kvm/linux-centos-7-x86_64-minimal-latest.gz -O /home/solusvm/kvm/template/linux-centos-7-x86_64-minimal-latest.gz

接着回到SolusVM的后台,点击Media-Add KVM Template,按如图所示填写相应的信息:

注:

1、Generation这个值默认是1,但我们一定要改成2,否则虚拟机无法正常开机。

2、Disk Driver一定要选择virtio。

3、Arch一定要选择x86_64,因为我们的系统模版是基于64位架构制作的。

4、建议开启CPU Model,并把模式改为host-passthrough。我个人是极其讨厌买到手的KVM机器查看CPU信息查不到型号的,所以用这个模式可以直接把母鸡的CPU型号暴露在虚拟机内,虚拟机内可以直接显示母鸡所使用的具体CPU型号。

OK,在添加好了系统模版后,我们还需要把现有的这些系统模版同步到被控中去,因为现在的这些模版文件都还在主控端上。

点击Media-Media Sync,选中我们要同步的模版,然后选中要同步的被控,提交即可:

稍等片刻,一旦这里显示Completed,即代表模版同步完成:

现在我们就可以来添加一个虚拟机套餐了,点击Plans-Add KVM Plan,按你自己的需求设置一个合适的套餐:

注意,下面这个模版一定要选择,否则客户在面板里面找不到可以重装的系统:

现在我们就可以来尝试开通一台KVM架构的VPS了,需要注意的是,在SolusVM的后台中,开设VPS必须要创建一个用户账户,点击左侧的Add Client,填写相应信息即可:

接着点击Virtual ServersAdd-Virtual Server,如图选择KVM架构:

选择我们刚创建的套餐:

设置主机名、操作系统:

VPS就创建好了:

稍等片刻儿,用户在前台也能管理VPS了:

最后使用Xshell登录我们创建的小鸡内,跑一个测评脚本:

Very nice,一切都是如此的美妙~

写在最后:

这套开VPS的方案,可以说就是目前最成熟,也最简单方便的了。然后你们可以自己脑补一下,花点钱买套WHMCS主机皮,或是找人定做一套,然后找人买几个便宜的C段,然后找机房托管几台机器,然后把IP路由一下,最后再按照我这篇文章的操作把SolusVM配置好并与WHMCS对接。你也可以做IDC。

本来不想花时间写这些东西的,但是既然IDC的门槛已经这么低了,那就不如让它再低一点,反正做这行,小打小闹谁都可以做,但是真想做规模的话,没几个能做的出来。

发表回复