联系邮箱:September@zbuse.com 投稿 / 读者墙 / 友情链接 / 文章存档 / 标签云

Whmcs IPMI模块

管理系统 September 2940℃ 0评论

yum install OpenIPMI OpenIPMI-tools

登陆whmcs后台》设置》产品/服务》相关产品》自定义字段》分别添加ipmiip/ipmiuser/ipmipass 类型为文本框的字段

下列代码保存路径modules/servers/ipmi/ipmi.php

<?php
//save as [whmcs]/modules/servers/ipmi/ipmi.php
function ipmi_ClientArea($params) {
// Output can be returned like this, or defined via a clientarea.tpl ipmi file (see docs for more info)
$ipmiip = $params[‘customfields’][“ipmiip”];
$ipmiuser = $params[‘customfields’][“ipmiuser”];
$ipmipass = $params[‘customfields’][“ipmipass”];

$cmd=”ipmitool -H $ipmiip -U $ipmiuser -P $ipmipass -I lanplus power status”;
$power=substr(exec($cmd),17);
$p=”https://$ipmiip/”;
$code = “机器电源状态: $power  用户名:$ipmiuser 密码:$ipmipass <a href=\”$p\” target=\”_blank\” style=\”color:#cc0000\”>登陆到IPMI页面</a>”;
return $code;
}

function ipmi_AdminLink($params) {
$ipmiip = $params[‘customfields’][“ipmiip”];
$ipmiuser = $params[‘customfields’][“ipmiuser”];
$ipmipass = $params[‘customfields’][“ipmipass”];
$i=explode(“.”,$ipmiip);
$p=”https://$ipmiip/”;
$code = “<a href=\”$p\” target=\”_blank\” style=\”color:#cc0000\”>登陆到IPMI页面</a>”;
return $code;
}

function ipmi_reboot($params) {
$ipmiip = $params[‘customfields’][“ipmiip”];
$ipmiuser = $params[‘customfields’][“ipmiuser”];
$ipmipass = $params[‘customfields’][“ipmipass”];
$cmd=”ipmitool -H $ipmiip -U $ipmiuser -P $ipmipass -I lanplus power reset”;
$return=exec($cmd);
if ($return==””) $return = “success”;
return $return;
}

function ipmi_off($params) {
$ipmiip = $params[‘customfields’][“ipmiip”];
$ipmiuser = $params[‘customfields’][“ipmiuser”];
$ipmipass = $params[‘customfields’][“ipmipass”];
$cmd=”ipmitool -H $ipmiip -U $ipmiuser -P $ipmipass -I lanplus power off”;
$return=exec($cmd);
if ($return==””) $return = “success”;
return $return;
}

function ipmi_on($params) {
$ipmiip = $params[‘customfields’][“ipmiip”];
$ipmiuser = $params[‘customfields’][“ipmiuser”];
$ipmipass = $params[‘customfields’][“ipmipass”];
$cmd=”ipmitool -H $ipmiip -U $ipmiuser -P $ipmipass -I lanplus power on”;
$return=exec($cmd);
if ($return==””) $return = “success”;
return $return;
}

function ipmi_cycle($params) {
$ipmiip = $params[‘customfields’][“ipmiip”];
$ipmiuser = $params[‘customfields’][“ipmiuser”];
$ipmipass = $params[‘customfields’][“ipmipass”];
$cmd=”ipmitool -H $ipmiip -U user -P $pass -I lanplus power cycle”;
$return=exec($cmd);
if ($return==””) $return = “success”;
return $return;
}

function ipmi_ClientAreaCustomButtonArray() {
$buttonarray = array(
“重启RESET” => “reboot”,
“电源重置POWER_CYCLE” => “cycle”,
“电源关闭POWER_OFF” => “off”,
“电源开启POWER_ON” => “on”,
);
return $buttonarray;
}

function ipmi_AdminCustomButtonArray() {
$buttonarray = array(
“重启RESET” => “reboot”,
“电源重置POWER_CYCLE” => “cycle”,
“电源关闭POWER_OFF” => “off”,
“电源开启POWER_ON” => “on”,
);
return $buttonarray;
}
?>

转载请注明:装逼爱好者 » Whmcs IPMI模块

喜欢 (2)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址