3.4.1 对接WHMCS实现服务器管理
本文整理智简魔方 DCIM 系统中“3.4.1 对接 WHMCS 实现服务器管理”相关的配置、操作或问题处理内容,供管理员和运维人员按原文步骤查阅与执行。
前言
WHMCS 插件用于「DCIM 系统对接 WHMCS」,实现自动化管理,实现 whmcs 开通,删除服务器,开机关机重装等管理。
支持 whmcs 版本为「whmcs6.x 」「whmcs7.x」
一、WHMCS 插件下载和安装方法
功能支持

插件下载和安装
①下载 :前往【DCIM 后台】-【系统设置】-【whmcs 设置】-【右上角点击下载 whmcs 插件】

②安装 :将下载后的插件内容【上传至 whmcs 中】,需将【ipmi 文件】上传至【whmcs 根目录/module/server/中】,【idcsmart_flowpacket】上传至【whmcs 根目录/module/addons/中】

二、DCIM 服务器管理系统中的设置
设置 API
请前往【DCIM 系统】-【系统设置】-【API 授权】-【添加 API 授权】

添加 API 信息
-
用户名: 建议为 whmcs 可输入其他
-
Key: 点击随机后注意妥善保存
-
IP: 填写whmcs 所在服务器 的出口 IP,我们仅允许该 ip 地址访问我们的接口

服务器销售分组设置(自动开通用)
如需实现服务器的自动开通 ,需设定服务器分组,否则请跳过
前往【DCIM】-【产品销售】-【服务器租用】-【右上角点击设备销售分组】

对接财务系统相关设置选项
以下选项为设定 whmcs 操作服务器的方法,例如 whmcs 操作暂停服务器时应该进行何种操作
-
删除机器自动空闲 IP: 用于在 whmcs 唤起删除服务器时是否需要将 ip 地址移除或移除哪些 ip 地址
-
通知接口地址: 预留设定,用于 DCIM 系统对接金盾,攻击监控等系统后的自动通知至 whmcs,实现封停 ip/短信/邮件/工单通知客户等功能
-
whmcs 后台地址: 用于 DCIM 中的快速链接,可一键链接至 whmcs 中
-
流量图 95 线: 用于控制在 whmcs 显示的流量图是否输出 95th 和输出方式

三、WHMCS 中的设置
服务器对接原理和参数说明如下。
系统通过 whmcs 预留的 server module 原生方式对接至 whmcs,使用 whmcs 原生产品设置和配置选项进行产品的价格定义。
我们使用 whmcs 默认提供的 hash 方式,进行一些接口自定义配置,您可根据教程一步一步完成配置。
添加服务器
【前往 WHMCS】-【系统设置】-【服务器设置】-【添加新的服务器】

******* 必填字段:**
-
NAME(名称): DCIM 配置
-
Hostname (主机名): 填写 DCIM 的域名或 ip 地址
-
Ip(IP 地址): 填写 DCIM 的域名或 ip 地址

-
Type(类型): 选择 ipmi
-
Username(用户名):添加的api 用户名
-
Password(密码):添加的key
-
勾选 SSL: 端口默认为 443,如有变更 dcim 访问端口,请填写 dcim 端口
-
Hash(访问散列值) 建议配置如下:点击这里查看参数说明
<flowchart>on</flowchart>
<kvm>on</kvm>
<resetbmc>on</resetbmc>
<kvmadmin>on</kvmadmin>
<resetbmcadmin>on</resetbmcadmin>
<reinstall>on</reinstall>
<reinstalladmin>on</reinstalladmin>
<reinstalltimes>99</reinstalltimes>
<adminoutip>on</adminoutip>
<post_emailorid>userid</post_emailorid>
<changehostname>ip</changehostname>
<reboot>on</reboot>
<rebootadmin>on</rebootadmin>
<off>on</off>
<offadmin>on</offadmin>
<on>on</on>
<onadmin>on</onadmin>
<ikvm>on</ikvm>
<ikvmadmin>on</ikvmadmin>
<vnc>on</vnc>
<vncadmin>on</vncadmin>
<idcimadmin>on</idcimadmin>
<rescue>on</rescue>
<rescueadmin>on</rescueadmin>
<crackadmin>on</crackadmin>
<crack>on</crack>
<customport>on</customport>
<custompartition>on</custompartition>
<changemainip>on</changemainip>
<changeassignip>on</changeassignip>
添加服务器分组
【前往 WHMCS】-【系统设置】-【服务器设置】-【创建新的分组】


分配服务器至分组

添加产品
前往【系统设置】-【产品/服务】-【产品/服务】-【新增产品】

-
产品类型: 独服/VPS
-
产品名称: 服务器产品型号 1
-
模块设置: 模块名称-ipmi
-
服务器组: IPMI
-
类型: 服务器租用


可配置选项的原理和参数说明如下。
我们使用 whmcs 可配置选项功能进行配置选项传递,包含以下产品,格式为: 参数 | 显示名称
注:红色为自动开通用 ,如无需使用自动开通功能,无需配置该字段
- 字段:server_group|设备销售分组
参数:1|分组 1 (1 为 DCIM 中设备销售分组 ID)
- 字段:os|操作系统
参数:1|windows2008 中文 (1 为 DCIM 中-系统设置-重装系统-操作系统 ID)
- 字段:ip_num|IP 数量
参数:5|5 个 IP (5 为需要为该服务器分配的 IP 数量)
注: NO_CHANGE |1 个 可配置为 NO_CHANGE,即不改变服务器 IP 数量,设置为 NO_CHANGE 后,系统不会对服务器 IP 数量进行变更
- 字段:ip_num|IP 数量按 ip 分组来分配 ip****
参数:5_1|5 个 IP (5 为需要为该服务器分配的 IP 数量,1 为 DCIM 里 ip 分组的 id)
- 字段:bw|带宽
参数:10,5|进 10Mbps,出 5Mbps (10,5 分别代表进出带宽,单位 Mbps)
注: NO_CHANGE,5|5Mbps NO_CHANGE 可用,代表不改变服务器当前方向的限速设定
前往【系统设置】-【产品/服务】-【可配置选项】-【Create a New Group】

-
Group Name: 配置组名称,建议服务器产品型号
-
Description: 描述自定义
-
Assigned Products: 指定产品
-
Add New Configurable Option: 点击添加新的可配置选项

设置销售的服务器型号 server_group

设置下单操作系统 os

设置 IP 地址数量 ip_num

设置带宽调整 | bw

四、WHMCS 前后台管理
产品对接 DCIM 实现开机、关机和重装管理
完成以上配置后,我们即可实现对接管理,为客户添加产品


在服务器 ID 处填写该服务器在 DCIM 中的 ID,即可操作功能。


会员中心管理功能
同时,客户可在会员中心前台进行管理。
关于允许客户使用的功能控制,请参考 5.1 ipmi插件配置参数说明

自动开通功能
如需使用自动开通功能请完成以下配置
五、问题说明
IPMI 插件配置参数说明
以下为一组完整、可复制的参数示例:
<flowchart>on</flowchart>
<kvm>on</kvm>
<resetbmc>on</resetbmc>
<kvmadmin>on</kvmadmin>
<resetbmcadmin>on</resetbmcadmin>
<reinstall>off</reinstall>
<reinstalladmin>on</reinstalladmin>
<reinstalltimes>3</reinstalltimes>
<adminoutip>on</adminoutip>
<post_emailorid>userid</post_emailorid>
<changehostname>ip</changehostname>
<reboot>on</reboot>
<rebootadmin>off</rebootadmin>
<off>on</off>
<offadmin>on</offadmin>
<on>on</on>
<onadmin>on</onadmin>
<ikvm>on</ikvm>
<ikvmadmin>on</ikvmadmin>
<vnc>on</vnc>
<vncadmin>on</vncadmin>
<idcimadmin>on</idcimadmin>
<rescue>off</rescue>
<rescueadmin>on</rescueadmin>
<crackadmin>on</crackadmin>
<crack>on</crack>
<customport>on</customport>
<custompartition>on</custompartition>
<sms_check>on,off,reboot,bmc,kvm,ikvm,vnc,reinstall,rescue,crack</sms_check>
<changemainip>on</changemainip>
<changeassignip>on</changeassignip>- flowchart: 是否开启流量图输出,on 开启,off 关闭。
- kvm: 是否开启 KVM 控制按钮输出,on 开启,off 关闭。
- resetbmc: 是否输出重置 BMC 按钮,on 开启,off 关闭。
- kvmadmin: 管理员界面是否输出 KVM 控制按钮,on 开启,off 关闭。
- resetbmcadmin: 管理员界面是否输出重置 BMC 按钮,默认开启。
- reinstall / reinstalladmin: 前台和管理后台是否输出重装按钮。
- reinstalltimes: 每周允许重装的次数。
- adminoutip: 开启后输出后台 IP 控制面板。
- post_emailorid: email 传递邮箱,userid 传递 WHMCS 用户 ID。
- changehostname: hostname 使用机器名称,ip 使用主 IP,hostnameip 使用“机器名称-主 IP”,none 不同步。
- reboot / rebootadmin: 前台和管理后台是否输出重启按钮。
- off / offadmin: 前台和管理后台是否输出关机按钮。
- on / onadmin: 前台和管理后台是否输出开机按钮。
- ikvm / ikvmadmin: 前台和管理后台是否输出 iKVM 按钮。
- vnc / vncadmin: 前台和管理后台是否输出 VNC 按钮。
- idcimadmin: 管理员界面是否输出快捷跳转服务器管理系统按钮。
- rescue / rescueadmin: 前台和管理后台是否输出救援系统按钮。
- crack / crackadmin: 前台和管理后台是否输出破解密码按钮。
- customport: 前台重装时是否允许自定义端口。
- custompartition: 前台重装时是否允许自定义分区。
- sms_check: 需要短信验证的操作,使用英文逗号分隔,需安装短信验证插件。
- changemainip: 同步时是否保存主 IP,默认开启。
- changeassignip: 同步时是否保存分配 IP,默认开启。
changehostname 使用“机器名称-主 IP”时的示例:
w20101-10.10.0.1API 用户名密码错误
连接端口错误
- 检查SSL端口是否填写正确
DCIM 无法连接
- 检查WHMCS服务器设置中的主机名及IP是否填写正确
自动开通失败:该分组没有空闲服务器
- 检查在DCIM设备销售分组里是否有空闲服务器