無標題文檔

FreeBSD 下更新 PowerEdge H700 阵列卡的固件

经过一段时间的使用以后,NAS 的情况基本的稳定,同时将系统迁移到了 FreeBSD(主要是为了使用 ZFS)。不得不说,FreeBSD 下对于硬件阵列卡的支持是非常棒的,例如 PowerEdge H700 就有原生工具 mfiutil 支持再也可以不用那逆天的 MegaCli 命令行了

Screen Shots

偶然看到 PowerEdge H700 的固件持续更新到了 2015 年,而我查看了下目前的固件版本是 2012 年的。更新的固件主要修复了很多问题,应该说是比较稳定的了,于是考虑升级下(反正闲着也是闲着)。

看了下 mfiutil 的文档是支持 flash 固件的,但是官方提供的 BIN 包是针对 Linux 的。查找了下解决方案,发现有个类似的可以参考。主要步骤是先解压缩官方 BIN 包:

[root@centos ~]# ./SAS-RAID_Firmware_9FVJ2_LN_12.10.7-0001_A13.BIN --extract /tmp/
[root@centos ~]# ll /tmp/payload/FW4651I.rom

然后提取到 .rom 这个文件,例如,我这边的 ROM 文件名是 FW4651A.rom 。然后将这个文件扔到 FreeBSD 下,用 root 身份进行更新:

mfiutil flash FW4651A.rom

更新的过程比较顺利,内核会有相应的硬件更新提示信息,建议在执行完毕以后 reboot 下机器。

Screen Shots

然后,再次查看固件版本,就可以发现已经升级到最新了。最后,提供下这个版本的 ROM 文件(谨慎使用)

- eof -

Dell PowerEdge H700 硬件阵列卡折腾记录

原先家里的网络存储这块比较松散,一台主机连接了个 USB3.0 的磁盘阵列盒做了个 Raid1 ,加上另外台机子使用的是基于 Linux 的软 Raid 组合,非常不利于管理和监控状态。

于是考虑组建个比较中心化的 NAS 来统一管理以及扩大存储这块的容量。

在某宝上研究了下,发现硬件这块的 Raid 卡普遍比较流行的是基于 LSI 芯片的方案。但性价比不是很好,稍微符合支持缓存、BBU 以及状态支持的都要四五百甚至网上(要知道蜗牛等矿难主机大概也就两三百)。

和店家聊了下需求以后,发现有一款 Dell PowerEdge H700 的阵列卡比较符合我的要求,同时价格相对来说比较便宜,带 1G 缓存支持 BBU 和 CadeCache 的只要两百人民币不到的价格。

阵列卡外观

阵列卡设置界面

到手安装上去以后,发现兼容性一般来说问题不大,经过我手的几块四代主板都可以支持(Q87、Z97系列芯片组)。可能是针对服务器设计的缘故,唯一的不好就是虽然带了块散热片但发热还是会让人担忧(红外测试了下,待机温度要六七十以上)。

所以我给它换了散热硅脂、加了块散热片(在缓存主控上),同时再从某宝上淘了个涡轮风扇对着板卡吹。经过这样子的改造待机温度基本上在三四十的样子比较符合预期,稳定性这块还是需要长时间使用下来再观察。顺便说下,涡轮风扇的转速通常比较高,对于噪音有要求的同学建议加根降压线。

Dell PowerEdge H700 基于 LSI 的芯片方案,因此可以直接使用 LSI MegaCli 的应用软件,无差别。软件方面,宿主机安装的是 CentOS,可以根据 Arch 的 AUR 脚本直接拿到 RPM 安装包本地安装。

注意,测试过其他的发行版(例如 Fedora)需要安装 ncurses5-compat-libs 这个软件包才能正常的运行主程序。

FreeBSD 下的安装也是比较方便,直接根据对应官方网站的安装即可,具体参见官方文档。

吐槽下 MegaCli 这个应用软件反人类的地方,首先先不说比较奇葩的安装位置 /opt/MegaRAID/MegaCli/MegaCli64 ,单从参数来说想要查看 --help 直接跑起来也是比较困难的事情(具体参考常用的命令)。

所以又从 Github 上找到了个 MegaCli 的 Warpper,扩展了下这个小应用(最后更新竟然在 2015 年),用于格式化输出(JSON 格式)以及方便监控。

Grafana 界面

最后,放张 Grafana 监控的图,这样子基本上就可以日常使用了。用了四块 2T 的硬盘组 Raid6、两块 Intel 的 SSD 组 Raid1 作为系统盘,同时加了块上古的三星 SSD 作为 CacheCade 盘。

除了硬盘总计硬件的成本大概两百不到,就可以享受硬 Raid 带来的方便了。修改以后的源代码在 https://github.com/mingcheng/megaraid ,欢迎随时交流。

- eof -

分享下自己的家庭网络拓扑和结构

上次对于树莓派搭建的家庭网络可能说了个大概,其实根据每个家庭的需求不同,网络的拓扑其实也会有些调整。下面从应用的切面角度分享下目前家庭的网络拓扑情况,这个是个大概的图:

Network

旁路由

家里的路由器性能其实不差,但考虑其实很多的工作(网关、代理、端口转发、等等)如果在路由器上处理,往往路由器的性能会打个折扣,同时也会影响稳定性。

同时,其实路由器上配置多了以后,对于以后更换路由器重新配置也是件比较麻烦的事情。所以,我使用了树莓派分担了部分路由器的任务,主要是些网络寻址以及服务发现等相关的服务,例如 DNS、DHCP 以及防火墙等。

DNS 这块主要使用 DNSMasq,做了很多使用这个应用应该做的事情,例如「境外网络加速」、对接 Consul 作为内部的无痛服务发现、网络内容过滤(去广告)等功能,同时为了加块解析速度本地加大了缓存。

后面考虑由于 斐讯 N1 综合性价比比树莓派高出很多,因此会考虑这部份的服务将往 N1 的硬件上迁移。同时,树莓派打算用来做 4G 的网关,搭配 UPS 这样子家庭网络就不会断网了。

监控

监控使用了 Prometheus 以及 Grafana 同时独立管理,具体的可以参看这里

应用层

应用层主要使用了虚拟机,系统方面主要是 CentOS 以及 Manjaro 以及 Debian 还有几台 FreeBSD。主要应用场景分别是用来做 CI、以及数据抓取(爬虫)以及其他些比较费时的操作。

虚拟机的寻址主要使用 Consul 搭配 DNSMasq 完成,写个 go 小程序用来注册以及健康检查。其中台虚拟机还对接了统一的通知服务,例如收发邮件以及短信。

数据层

数据层相对比较简单,使用了两台物理机:分别是台联想的 i7 四代小主机、16g 的内存(性能不差因此拿来开虚拟机用);以及还有台相对比较弱的奔腾机接了 Raid1 阵列柜,专门用来做数据存储和同步。后面会考虑使用黑群晖,将这部份硬件的可靠性强化下。

物理机

以上

我的照片

嗨!我叫「明城」,八零后、码农、宁波佬,现居杭州。除了这里,同时也欢迎您关注我的 GitHubTwitterInstagram 等。

这个 Blog 原先的名字叫 Gracecode.com 、现在叫 「無標題文檔」 。 要知道作为码农取名是件很难的事情,所以不想在取名这事情上太费心思。

作为八零后,自认为还仅存点点可能不怎么被理解的幽默感,以及对平淡生活的追求和向往。 为了避免不必要的麻烦,声明本站所输出的内容以及观点仅代表个人,不代表自己所服务公司或组织的任何立场。

如果您想联系我,可以发我邮件 `echo bWluZ2NoZW5nQG91dGxvb2suY29tCg== | base64 -d`

分类

搜索

文章