IDC零基础系列——Hetzner独服使用Proxmox创建VPS

一.介绍

Hetzner一直以来是以卖性价比比较高的德国机器著名的,最近出了新的芬兰机房,推出了比以往更具有吸引力的机型,我也忍不住买了台,打算买几个IP给自己开机器玩,不过,在折腾的过程中,发现了一些坑,于是在全部解决后来分享下自己的经验。

二.问题

如果是个人开VPS我还是推荐Proxmox,因为使用起来方便,而且功能也比较全,但是,由于Hetzner的特殊,导致了一些问题的出现

  1. Hetzner在系统模板处没有Proxmox
  2. 在解决第一个问题后发现Hetnzer的Proxmox网卡配置不正确
  3. 在解决第二个问题后发现Hetzner的IP无法直接使用

另外,希望你看到这篇文章的时候还没买IP,特别是别买IP段(subnet),因为Hetzner的机房网络启用了MAC Filter,而你购买的单个IP可以设置MAC,IP段却不能设置,这个问题在国外的主机论坛上也有很多人提到,解决办法是发工单让机房帮你把IP段Route到你的主IP或者购买的单个IP上,还是比较麻烦的。

此外,由于IP广播的特点,你买的IP段里面会有两个IP无法使用(一个作为网关一个作为广播地址),所以如果你买了/29那么实际上只能有6个可用(大部分机房其实是5个可用),但是你出的钱却是8个的,所以如果你需要的IP不超过6个,建议买单个(单个IP最多只能买6个)。 阅读全文→

Proxmox VE 4.x升级5.x全纪录

一.前因

前阵子心心挂念的Proxmox VE 5.0终于发布了,为啥说期待呢,我个人主要是因为内核的变动,据说是从4.4内核直接到了4.10,这意味着什么?当然是BBR !当然,Proxmox是可以开KVM虚拟机的,这个情况下内核可以随便换,但是,还有LXC你别忘了,没法更改内核,然而其性能以及资源的损耗又让人难以割舍,所以,在4.10的内核支持下它应该也能享受到BBR的优势了。

恩,擦擦嘴,先想想怎么升级吧,全部重装是个办法,但是我目前虚拟机数量还是有几台的,数据量也是不小,所以这样搬来搬去就很烦,那么就直接升级吧。说到升级,那么肯定得去翻官方wiki,这是个好东西啊 ——> 传送门

二.操作

步骤还是挺长的,我们一步步来

首先看前提条件

  • upgraded to latest V 4.4 //升级到最新的4.4版本
  • reliable access to all configured storages //能够稳定连接当前配置的所有存储
  • healthy cluster //集群的话要保证节点都是健康的
  • no VM or CT running //关闭所有虚拟机
  • valid backup of all VM (needed if something goes wrong) //如果要稳妥就先备份一下,省得挂了没法还原
  • Correct repository configuration //正确配置repo
  • at least 1GB free disk space at root mount point //根目录起码有1G
  • if using Ceph, you should be already running the Ceph Luminous version, but see the caveat above //如果使用了Ceph需要保证你用的是Luminous版本

阅读全文→

(插播)Proxmox VE安装RouterOS CHR版本

一.介绍

RouterOS,大名鼎鼎的软路由系统,简称ROS,我是一直知道但是没咋着用。最近某P总给我介绍了这货的一个特殊版本,CHR版,全称Cloud Hosted Router,简而言之就是跑在云服务器或者说是虚拟机(虚拟环境)下的特殊版本,默认开放全功能,但是限制端口速率为1Mbit,适合用于演示和学习。

当然啦,我肯定不止拿来学习的,还得搞点事对吧,这个版本的特殊之处在于授权便宜,而且不像常规的L系列授权限制各种用户数之类的,这个版本授权限制的就是速度,如下

License Speed limit Price
Free 1Mbit FREE
P1 1Gbit $45
P10 10Gbit $95
P-Unlimited Unlimited $250

看上去美滋滋好嘛,因为p1授权等同于L4授权,便宜的一逼简直(因为实际上你去淘宝或者官方代理那儿买基本上30刀左右或者200人民币左右就能拿下了)

同时CHR版本和普通版本基本上是同步更新的,你能一直用到最新的版本,而不用死命折腾5.x版的破解了。

二.安装

好了,反正看这个的肯定对ROS了解的比我多,也不扯啥功能之类了,就直接开始说怎么装吧。

首先,请注意,官方对于支持的虚拟化有个说明“Hypervisors that provide paravirtualization are not supported”,就是说不支持半虚拟化,所以请使用KVM安装。

所以我们选择创建虚拟机,第一步没啥好说的,跳过,操作系统这儿由于ROS 6基于Linux 3.X的Kernel,所以我们选这个 阅读全文→

Proxmox 4 LXC无法启动——Server refused to allocate pty问题

一.事情经过

Proxmox 4采用LXC作为OpenVZ的替代品,不过我用的系统模板还是OpenVZ的,毕竟比较好找,之前也一直没问题,今天重启了一下一个容器,然后就坏事了……且让我细细道来

二.人间惨剧

我用Proxmox开小鸡来搭建Hadoop集群,采用LXC而不是KVM的主要原因还是前者性能损耗更小,一直以来都挺正常的,今天跑了几个脚本之后就顺手重启了下,结果发现重启后连不上了!!!!!这特么要出事啊,数据全在上面,怎么办?

先找好应急处理办法,直接mount后导出数据,但是我不服啊,然后我就开始找问题

①SSH无法登陆,卡在连接那儿,说明已经连上机器了,但无法进行后续步骤,先在母鸡上连接测试,也是这个情况,说明不是网络问题

②关闭容器后用命令行方式启动,发现没有报错,那么容器状况也是正常的

③使用ssh的-vv参数,发现有server refused to allocate pty的错误提示,无法分配PTY?

没错了,连接建立后因为无法分配PTY所以无法完成后续步骤,那么到底是因为什么导致的这个原因呢?

三.罪恶根源

我继续研究,输入lxc使用tab补全,我发现了lxc-attach命令,嘿嘿,就是它了,lxc-attach --name ID可以让我们直接进入容器中,然后我们tail -f /var/log/secure,果然有问题

这两行错误映入眼帘,就是你了,那么怎么解决?一波谷歌,发现了不少解决方案,基本是如下 阅读全文→

使Proxmox VE创建的LXC容器支持TUN/TAP

一.为什么

Proxmox VE 4将3代的OpenVZ支持去除换成了LXC,算是跟随趋势吧,但是LXC和OpenVZ还是有挺多不同的,在权限上更是如此,而网上最多的还是OVZ相关的教程,LXC的是真的少,不过一直以来没需求,所以没怎么折腾,最近在搞内网,所以为了用Tunnel还是得把TUN/TAP支持打开。

二.怎么办

首先当然是谷歌咯,关键词选得好马上出结果,proxmox官方论坛讨论贴 https://forum.proxmox.com/threads/tun-devices-in-ve-4-lxc.23473

总结一下

①.如果需要对所有(之后创建的)LXC容器全部开启tun/tap

那么需要修改/etc/lxc/default.conf,添加lxc.cgroup.devices.allow = c 10:200 rwm

当然,也可以创建/usr/share/lxc/config/common.conf.d/02-tuntap.conf 这样的配置文件来取得同样的效果

②.而如果只要对指定容器有效,则需要修改/etc/pve/lxc/[ID].conf , [ID]为你的容器编号

还没完,这样只是给了权限,实际上还没好,需要在容器的/etc/rc.local 自启动文件中添加如下

这样你执行需要tun/tap的程序时就不会出问题了 阅读全文→