防止遗忘 —— ESXI 安装黑群晖
img
和 pat
grub.cfg
修改
- 打开
DG
,把img
拖进去,然后找到grub.cfg
- 如果群晖使用单网口,需要把
netif_num=2
改为netif_num=1
,同时把mac2=001132123457
这串代码整行删除 - 「虚拟机限定」:删除
DiskIdxMap=00
、SataPortMap=1
、SasIdxMap=0
这三个参数
转换 vmdk
用 StarWind V2V Converter
转换,顺序依次是:Local file
-> VMDK
-> ESXI Server image
-> ESXI pre-allocated image
安装注意事项
- 虚拟网卡类型须修改为
E1000e
- 注意是启动类型是
EFI
还是BIOS
7.0
以上版本的img
须选择usb
或者sata
安装
macvlan
设置
控制面板
->网络
->网络界面
->管理
->Open VSwitch 设置
->启用 Open VSwitch
- ssh 连入群晖,输入
ip addr
或者ifconfig
查看网口信息 - 创建
macvlan
1
docker network create -d macvlan --subnet={网段} --gateway={网关} -o parent={接口型号} {自定义此 macvlan 的名称}
- 创建容器
1
docker run -d --name={容器名称} --net={macvlan 名称} --ip={容器 ip,须在 macvlan 设置的网段内} -v {path}:{path} --privileged=true --restart=always {容器镜像}
- 以网心云 docker 为例:
1
2
3
4
5docker network create -d macvlan --subnet=172.20.0.0/16 --gateway=172.20.0.1 -o parent=ovs_eth0 macvlan_wxedge
docker run -d --name=wxedge1 --net=macvlan_wxedge --ip=172.20.0.212 -v /volume1/docker/wxedge1:/storage --privileged=true --restart=always onething1/wxedge:latest
docker run -d --name=wxedge2 --net=macvlan_wxedge --ip=172.20.0.213 -v /volume1/docker/wxedge2:/storage --privileged=true --restart=always onething1/wxedge:latest
与群晖 UPS 联动,实现停电后自动关机
ESXI 设置
- ESXi 默认是关闭主机 SSH 功能的,但是我们后续会使用到,所以我们首先要去 ESXi 的 WEB 后台开启,进入 WEB 后台:
主机
->操作
->服务
->启用安全 Shell (SSH)
- 接着需要修改一下 ESXi 的默认软件安装策略,否则会阻止软件包的安装,进入 WEB 后台后:
主机
->管理
->安全和用户
->接受级别
->编辑设置
->社区
- 下载
NutClient-ESXI
,版本随意,记得要契合 ESXI 的版本。我这下的是 2.0.0 的,网上随便找找,然后 scp 连上 ESXI 把包丢进/tmp
- 安装 NutClient,此处以
NutClient-ESXi-2.0.0.tar.gz
为例:1
2
3
4
5cd /tmp # 进入 tmp 文件夹
tar -xzvf NutClient-ESXi-2.0.0.tar.gz # 解压文件包
sh upsmon-install.sh # 执行安装脚本返回如下的安装信息代表安装成功了:
1
2
3
4
5
6Installation Result
Message: Operation finished successfully.
Reboot Required: false
VIBs Installed: Margar_bootbank_upsmon_2.7.4-2.0.0
VIBs Removed:
VIBs Skipped: - 安装成功后,我们返回到 ESXi 的 WEB 后台,
主机
->管理
->系统
->高级设置
,在右上角的搜索中输入NUT
进行快速查找,一共有 6 个参数设置,如果没有,可以尝试重启 ESXi 主机 - 右键修改参数,以下是各项参数的说明:
UserVars.NutFinalDelay
:关闭 ESXi 前的等待时间,单位为秒,建议改为:60UserVars.NutMailTo
:接收邮件通知的邮箱地址,如果没有开启邮件通知,这里不用设置。UserVars.NutPassword
:密码,如果没有在群晖上修改过,这里统一填:secretUserVars.NutSendMail
:关机前是否发送邮件通知(0:不发送,1:发送)UserVars.NutUpsName
:监听的网络 UPS 服务器,例子:ups@10.10.10.10(ups@后面填写你们自己群晖地址)UserVars.NutUser
:用户名,如果没有在群晖上修改过,这里统一填:monuser- 建议只改
UserVars.NutFinalDelay
、UserVars.NutPassword
、UserVars.NutUpsName
、UserVars.NutUser
- 参数配置完成后,需要重新启动
NutClient
服务,进入 WEB 后台:主机
->管理
->服务
->NutClient
,点击上方的启动
按钮,以后每次修改配置参数后,都需要重启该服务,另外需将该服务设置为随主机启动和停止
- 接下来就是打开自动启动
群晖需要特别设置一下
为什么停止操作选择的是
关闭电源
,而不是关机
?因为 UPS 是挂载在群晖上面,跟群晖联动的,如果是正常关机,UPS 会认为不是意外停电,后续自然无法正常关闭 UPS 的电源,这样会导致 UPS 电池一直放电,对电池伤害很大,而且停电恢复后也无法自动开机。并且白裙的 UPS 关机逻辑也是:停电后先进入安全模式(非直接关机),当进入安全模式后,马上通知 UPS 断电。群晖进入安全模式后,关闭电源并不会对硬盘有影响,因为磁盘已经无读写操作了(磁头已经收缩回去了)
如果想要来电自动开机,就需要去主板设置一下来电自启
群晖设置
- 首先要把 UPS 通讯线接入机器,然后编辑一下群晖的虚拟机配置(需要先把群晖关机),接着添加一个 USB 设备,也就是刚刚插入的 UPS 通讯线
- 添加 USB 设备后,保存一下配置,然后把群晖开机,等待进入群晖系统里面设置
- 设置进入
安全模式
等待时间不宜过长,如果设置的太长时间,会导致 UPS 蓄电池电量耗尽直接关机,这样就失去了买 UPS 的意义,另外要勾选一下启用网络 UPS 服务器,IP 填写成 ESXi 的管理 IP,这样当 UPS 通知群晖停电了,群晖就会自动进入安全模式,随后再通知 ESXi 进行关机 - 目前群晖已经正常读取 UPS 的信息了
校验
- 登录 ssh 中执行这条命令验证:如果 ESXi 输出类似这种反馈信息,则表示连接 UPS 成功:
1
/opt/nut/bin/upsc [email protected] # [email protected] 为 ESXI 中设置的 `UserVars.NutUser`
- 验证防火墙设置,执行代码:如果看到
1
esxcli network firewall ruleset list
upsmon
为ture
则表示正常:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 七夜 の Blog!
评论