前言

为了解决日益增长的计算、存储、测试环境的需求,结合我们办公室小机房优异的散热、电量、网络条件(详情如下),因此在2021年3月份决定将公司的13台Dell R720服务器搬迁到机房进行托管,以期获得稳定的使用条件。

  • 散热:开了16度然而还能热出汗的空调
  • 供电:物业预期下午5点断电早上11点先进行预演,时不时跳一下闸什么的
  • 机房布线管理:网线乱飞、电源线乱飞、随时踩一脚断电or断网
  • 潘多拉的域名玩法:电信专线并不封堵TCP/443,当年(2017)使用TCP/443并配合DNS-01 challenge验证域名所有权,然后使用Let's Encrypt来签发证书,最终提供给测试环境HTTPS证书,并且在公网环境提供免备案的服务

极其漫长的踩坑之路

从过年后3月初决定要搞事,开始采购新机器到最终上架“萝岗加速器”机房的时间是5月7号,整整跨了两个月。

硬件玄学

二手硬件不稳定什么的,对于我们这种垃圾佬当然不是什么问题啦!插电,开机~~~

  • 服务器采购(花费一周)
    • 购买6台新的Dell R720 XD 2U服务器,每台机器配置
      • CPU: E5 2650V2 * 2
      • H710P mini 硬盘阵列卡
      • 内存:8GB/16GB * 16 = 144GB/288GB
  • 迁移原有服务器(Dell R420)内硬盘到新的机器
    • 顺利的:基本能够直接开机,只要硬件自检通过,然后重新配置阵列卡,开机完成硬件升级
    • 失败的:硬盘阵列卡故障、硬盘背板失败不通电、内存没装好…..

PVE集群之坑

  • 从已有用于测试环境的3台1U服务器,升级成4台2U的服务器(由于IP经过了变更,所以需要重新组件集群而不是使用现有的集群)

    • 旧的集群:2台1U服务器原本已经安装了PVE并且有虚拟机提供测试环境数据,正在服役
    • 新的集群:2台新机器直接安装PVE操作系统,组建集群
  • 集群管理的坑

    • 对pve集群node节点管理不熟悉
    • 对pve虚拟机磁盘管理不熟悉导致的坑
      • 误删两个虚拟机硬盘,直接导致测试环境需要重建
      • remove/purge的时候要认真阅读警告信息。。。

域名备案问题

这是个迷之问题,只有在神奇的东方才有这种需求,这个过程花了一些时间去了解政策,才算是明确了再次备案不影响原先接入备案的问题。

  • 遵循接入方备案原则:同一个域名,接入阿里云需要做一次备案,接入另外一家服务商需要再做一次备案。
  • 当年绕过电信专线不封堵TCP/443用来提供HTTPS,然后间接提供相对标准(只使用80/443端口)的公网HTTP服务的方案,在经过了几年的发展,积累了一大批域名,还好基本都是属于同一个顶级域名的二级、三级域名,没造成太大的修改难题

文网文问题

这是一个更迷的问题,同样只存在于大局域网国家,多次申诉、联系客服折腾无果,只能按照某福报厂要求对网站内容进行大幅度修改,去掉游戏相关字眼(只要网站内容有游戏,必须要求文网文证件)的内容。

一个国家有关部门已经不签发的证书,却在审核备案的的初审部分需要审核,投诉无门,喝喝

网络架构调整

  • 原网络拓扑:公司和服务器之间是局域网(192.168.0.0/21),服务器局域网连接是通过连接同一个交换机并uplink到公司主路由来实现访问的,几个提供对外访问的具有公网的服务器则是另外一个专线交换机连接
  • 新网络拓扑:为了方便公司同事在开发的时候,直接使用局域网地址+端口号来访问测试服务,而不是一切访问都经过网关做端口转发
    • 通过 SD-WAN 技术,使用P2P VPN软件Zerotier建立局域网 172.16.200.0/24
      • 托管机房网关 Zerotier 网口 IP 172.16.200.1
        • 配置防火墙允许流量 iptables -t raw -A INPUT -i zt+ -j ACCEPT
        • 配置 NAT iptables -t nat -A POSTROUTING -o zt+ -j MASQUERADE
        • 配置入站数据转发 iptables -A FORWARD -i zt+ -j ACCEPT
        • 配置 Linux 内核开启 ipv4 转发,修改 /etc/sysctl.conf net.ipv4.ip_forward=1 并且使用 sysctl -p 使之生效
      • 公司办公网关 Zerotier 网口 IP 172.16.200.42
        • 配置路由表 ip route add 172.16.200.0/24 via 172.16.200.1
        • 配置 NAT iptables -t nat -A POSTROUTING -o zt+ -j MASQUERADE
        • 配置出站数据转发 iptables -A FORWARD -o zt+ -j ACCEPT
        • 配置 Linux 内核开启 ipv4 转发,修改 /etc/sysctl.conf net.ipv4.ip_forward=1 并且使用 sysctl -p 使之生效
      • 以上配置实现公司办公网络 192.168.0.0/21172.16.2.0/24 的单向访问,反之 172.16.2.0/24 访问 192.168.0.0/21 并不是合理的需求
    • 穷鬼的折腾之路
    • 24口交换机,通过VLAN划分出两个LAN
      • 1-18 共18个交换机1Gbps电口,划分为一个VLAN,用于提供服务器之间的局域网访问
      • 19-24 共6个交换机1Gbps电口,划分为另外一个VLAN,用于提供公网访问(机房仅提供一条Uplink网线过来)

服务器上架

一方折腾之后,5月7号下午搬迁到机房,顺利开机,配置网络,顺利得有点惊人????2小时搞定回家

果然,事出反常必有妖….5月8号早上发现其中一台机器硬盘竟然变为只读。。。过去机房开机搞定,回公司

几个小时之后,硬盘再次变为只读….带上硬件背板、阵列卡备用件机房拆机更换,似乎有点顺利,开机启动,进入系统引导,然而经过了几次硬盘变为只读,系统文件已损坏,无法进入系统,一番乱敲命令之后,发现并没有解决问题

关键时刻,找出了日常装系统的小U盘,用上了由强大的 ventoy 管理的PVE ISO安装盘,进入rescue boot,哦吼,错误提示跑个硬盘修复命令,一路yyyyyy....reboot,神奇。。。解决了