查看原文
其他

基础运维神器:开源的裸金属服务器管理平台RackShift




读完需 5 分钟

速读需 3 分钟 




需求

最近前同事问我有没有免费或者开源的硬件运维管理平台,通过此平台可以实现包括自动抓取服务器配置、带外管理、开关机、bios配置、固件升级等等功能。


虽然我们可以通过IPMI标准监视接口跨不同的操作系统、固件和硬件平台,智能的监视、控制和自动回报大量服务器的运作状况,以降低服务器管理成本;但是服务器厂商都有自己的硬件管理平台,如华为的BMC、戴尔的iDRAC,没有一个统一的管理平台服务可以兼容各家厂商。


解决方案

现在我们有了一个靠谱的开源解决方案:RackShift。


RackShift 是开源的裸金属服务器管理平台,功能覆盖裸金属服务器的发现、带外管理、RAID 配置、固件更新、操作系统安装等。


RackShift 要解决的问题包括:

  • 各种网络环境下裸金属服务器的自动、手动发现;

  • 裸金属服务器的带外控制管理,包括开关机、重启、配置 PXE 等;

  • 裸金属服务器批量 RAID 配置、固件更新、装机等。




RackShift目前已可以支持的机型:

品牌型号
DELL EMCPower Edge R630 R640 R720 R730 R740 R910 R920 R930系列
HPEProliant 380 580 Gen8 Gen 9 Gen 10 系列
Inspur5280 8480 M4 M5 系列
IBMX3550 X3650 M4 系列
H3CR4900 G3 系列
ZTER5300 G4 系列



系统架构

RackShift 遵循 GPL v2 开源协议,使用 SpringBoot/Vue 进行开发,界面美观、用户体验好,集成并扩展 RackHD,支持的X86 服务器品牌包括浪潮、戴尔、华为、联想、惠普等。


1.技术栈:

  • 前端: Vue.js

  • 后端: Spring Boot

  • 数据库: MySQL


另外,RackShift 使用、集成、借鉴的其他开源项目:

  • RackHD:RackShift 集成和参考了 RackHD 提供的裸金属服务器管理能力和思路;

  • MAAS:RackShift 参考了 MAAS 提供的裸金属服务器生命周期纳管思路;

  • Digital Rebar:RackShift 参考了 Digital Rebar 提供的操作方式和 UI 参考;

  • Element:RackShift 使用 Element 提供的优秀前端组件库。


2.软件分层

组件说明:

  • RackShift-WEB:基于 VUE2.6.11 开发的单页应用

  • RackShift-Server:基于 SSM 的 SpringBoot 应用,对 RackHD 的操作进行更高的抽象并且控制与 RackHD API的交互,控制 RackShift-Proxy 节点,与 RackShift-WEB 一并打包成一个应用部署

  • RackShift-Proxy:可单独与 RackHD 模块部署,主要用于主节点控制客户节点进行注入镜像下发,DHCP 配置,远程 KVM 等等

  • RackHD:DELL EMC 开源的裸金属供应软件,现已停止维护

  • Mysql:RackShift-Server 主要运行数据的存储区

  • Mongo:RackHD 与RackShift-Server 的运行数据存储区

  • RabbitMQ:各组件之间通信的中间件

  • DockerEngine:各组件都是以 Docker 容器运行在节点计算机


3.组件调用关系



部署

1.网络结构

RackShift 网卡说明:

  • 管理:与 BMC 管理网络三层通信,通过该网络 RackShift 能控制物理机的 PXE 启动等行为

  • PXE :与 物理机 PXE 网口直连,通过该网络 RackShift 能下发 PXE 过程中需要的文件


2.安装

# 1.在线安装sh -c "$(curl -sSL https://github.com/rackshift/rackshift/releases/latest/download/quick_start.sh)"
# 2.离线安装tar -zxvf rackshiftV1.4.0-offline.tar.gzcd rackshiftV1.4.0-offline/installer./install.sh


注意:安装过程中需要您手动输入服务器上用作 PXE 的网卡 IP 地址作为 RackShift 服务器的 IP 地址。



3.访问

地址: http://ip:80账号:admin密码:123



服务器装机演示


1.选择需要装机的服务器


2.工作流操作,安装Centos7 64位版



3.设置工作流参数



在工作流中设置服务器密码及网卡信息,操作系统安装过程中会进行自动配置。


4.执行工作流


执行工作流后,系统自动下发并执行安装



此时可在远程控制台,查看执行情况



总结

RackShift 在基础运维领域真正做到了我们想做但却做不到的事情,将其应用到生产环境可以节省我们很多的运维成本。



Jenkins+Ansible:助力基础设施建设

运维思索:接地气的运维自动化建设

事件推送网关: “让基础设施建设动起来”

蓝鲸实现多环境vsphere虚拟机交付

一套包含完整前后端的系统如何在K8S中部署?



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存