Redfish技术介绍
1.1 概述
Redfish是一种基于HTTPs服务的管理标准,利用RESTful接口实现设备管理。每个HTTPs操作都以UTF-8编码的JSON格式(JSON是一种key-value对的数据格式)提交或返回一个资源或结果,就像Web应用程序向浏览器返回HTML一样。该技术具有降低开发复杂性,易于实施、易于使用而且提供了可扩展性优势,为设计灵活性预留了空间。目前我们利用Redfish管理接口可以实现包括用户管理、获取服务器信息、管理模块信息等常用HDM和BIOS配置。
Redfish=REST API+软件定义的服务器(数据模型),当前由标准组织DMTF(www.dmtf.org)负责维护。
1.2 协议
在Redfish中,每个URL都代表一个资源,一个服务或一组资源。根据REST原则,使用统一资源标识符(URI)指向资源,客户端与资源进行交互。
资源的格式根据Redfish架构来定义,客户端再根据Redfish架构来确定正确的语义(Redfish语义被设计的非常直观)。
在Redfish中,所有资源都是从服务入口点(根)链接的,这个根始终位于/ redfish / v1。
主要资源类型以“collections”结构化,以支持独立,多节点或聚合的机架级系统,其他相关资源从这些集合中的成员中散开。
1.3 特点
在Redfish之前,现代数据中心环境缺少通用的管理标准。随着组织转向横向扩展解决方案,传统标准不足以满足管理众多单节点和多节点服务器融合架构的需要。
Redfish从一开始就设计为融合基础架构的通用管理协议,提供了的强大的简便性,可以集成到现有的工具链中。
2 Redfish和IPMI
IPMI是一个受到广泛支持的行业标准,它指定了一组接口,以提供独立于主机系统的CPU、固件(遗留BIOS或UEFI)和操作系统(OS)的带外管理和监视功能。然而,IPMI现在是一个已有近20年历史的遗留接口,无法满足当今的功能和安全需求。
2.1 功能
IPMI作为带外管理的较老标准,被限制为一组“最小公分母”命令(例如,电源开关、重启、温度读数和风扇速度)。因此,用户被限制在一组功能的缩减中,因为尝试增加IPMI功能的特定于供应商的扩展在来自不同供应商的平台上并不常见。与此同时,用户越来越多地开发自己的工具来实现紧密集成,常常不得不依赖于带内管理软件。IPMI内的功能缺乏标准化,加上由于重复的OEM扩展而导致越来越多的碎片,导致特定于供应商的解决方案不能满足向外扩展的数据中心用户的需求。
2.2 安全
开发Redfish的主要原因之一是解决遗留IPMI无法有效解决的安全需求。例如,Redfish基于其网络传输协议的超文本传输协议安全(HTTPS)/安全套接字层(SSL)标准,这比唯一的IPMI网络协议更普遍、更安全、更可审计。
3 HDM Redfish实现
HDM Redfish接口基于Redfish V1.1.1开发。目前我们利用Redfish管理接口可以实现包括用户管理、获取服务器信息、管理模块信息等常用HDM和BIOS配置。
Redfish的接口涉及两方面,包括HDM的接口和BIOS的接口。
3.1 HDM接口
表1 Redfish功能
|
功能 |
描述 |
|
机箱管理 |
查询机箱集合资源信息 |
|
服务器主机电源操作 |
支持服务器电源控制,和查询相关操作 |
|
主机资源操作 |
支持主机风扇、CPU、内存、PCIE卡、扩展卡、UID灯、网口查询或设置相关操作 |
|
HDM系统资源操作 |
支持HDM重启,主备切换操作。 |
|
存储管理 |
支持RAID卡信息获取,逻辑盘创建、删除、信息查询等 |
|
固件管理 |
支持相关固件信息查询和固件升级 |
|
网络服务 |
支持NTP、SNMP、SMTP、SYSLOG信息查询和配置 |
|
会话、服务管理 |
支持创建会话,查询设置服务信息 |
|
HDM账户管理 |
支持用户账户、用户组操作接口 |
|
BIOS配置管理 |
支持查询下次启动设备、BIOS配置选项,修改BIOS密码、恢复BIOS默认属性值。 |
3.2 BIOS配置项
表2 BIOS配置项支持列表
|
菜单 |
描述 |
|
Advanced |
ACPI设置、休眠设置、终端配置 、串口重定向设置、支持传统USB设备功能、XHCI切换、支持大容量USB存储设备、配置OptionROM的加载策略、PXE设置、启动设备检测计数设置 |
|
Platform Configuration |
支持SATA控制器设置、USB设置、显示设备选择选择、BIOS串口日志输出设置、SOL功能设置、软件错误注入支持设置 |
|
Socket Configuration |
支持CPU Core设置、超线程功能设置、Monitor/Mwait功能设置、Intel TXT功能设置、Intel硬件辅助虚拟化技术设置、安全模式扩展功能设置、硬件预取设置、EIST(P状态)设置、TDP等级设置、Intel® Speed Select设置、EIST PSD Function 设置、Turbo模式设置、CPU Core 频率设置、硬件P状态设置、硬件PM中断设置、EPP设置、C状态设置、T状态设置、热监控设置、功率性能调节设置 |
|
Server Management |
支持FRB-2定时器、超时策略设置和OS看门狗定时器、超时策略设置 |
|
Security |
支持安全启动模式配置,提供出厂默认秘钥设置 |
|
Boot |
支持数字锁定键状态设置、启动模式设置(UEFI和LEGACY)、UEFI Shell使能设置、启动选项设置 |
Redfish技术介绍的更多相关文章
- .Net环境下的缓存技术介绍 (转)
.Net环境下的缓存技术介绍 (转) 摘要:介绍缓存的基本概念和常用的缓存技术,给出了各种技术的实现机制的简单介绍和适用范围说明,以及设计缓存方案应该考虑的问题(共17页) 1 概念 ...
- RAID技术介绍
RAID技术介绍 简介 RAID是一个我们经常能见到的名词.但却因为很少能在实际环境中体验,所以很难对其原理 能有很清楚的认识和掌握.本文将对RAID技术进行介绍和总结,以期能尽量阐明其概念. RAI ...
- .Net环境下的缓存技术介绍
.Net环境下的缓存技术介绍 摘要: 介绍缓存的基本概念和常用的缓存技术,给出了各种技术的实现机制的简单介绍和适用范围说明,以及设计缓存方案应该考虑的问题(共17页) 1 概念 1.1 ...
- 网络存储技术介绍(1) ( based on zt)
最近由于某同学微信发了一些网络存储的文章,开始感兴趣,稍微收集了一些 一. 网络存储技术 http://ask.zol.com.cn/q/187044.html (yxr:很老的技术介绍吧) 网络 ...
- (转) SLAM系统的研究点介绍 与 Kinect视觉SLAM技术介绍
首页 视界智尚 算法技术 每日技术 来打我呀 注册 SLAM系统的研究点介绍 本文主要谈谈SLAM中的各个研究点,为研究生们(应该是博客的多数读者吧)作一个提纲挈领的摘要.然后,我 ...
- VPS技术介绍以及分析
VPS的全称为Virtual Private Server,叫做虚拟专用服务器(Godaddy称之为Virtual Dedicated Server,VDS).就是利用各种虚拟化手段把单台物理服务器虚 ...
- 转:Android 2.3 代码混淆proguard技术介绍
ProGuard简介 ProGuard是一个SourceForge上非常知名的开源项目.官网网址是:http://proguard.sourceforge.net/. Java的字节码一般是非常容易反 ...
- WPF开发技术介绍
本月做了一个小讲座,主要是WPF的开发技术介绍,由于是上班时间,去听的人不多,但对于自己来说至少是又巩固了Winform的知识,抽时间写一篇文章,在此分享给大家,有什么宝贵建议大家也可以提给我,谢谢. ...
- Portal技术介绍
Portal技术介绍 Portal是web应用发展的一个重要趋势,目前几乎所有大的软件厂商都有自己的Portal产品.并且Portal技术已经形成规范.本文对Portal技术和产品进行了分析,目的 ...
随机推荐
- Java数组直接选择排序、sort()排序
/** * 1.数组sort()排序 * 2.直接选择排序(两重for循环排序) */ import java.lang.*; import java.lang.reflect.Array; impo ...
- java堆栈信息查看,以及JVM性能查看工具-jconsole+jmap
java-core P487 P515 chapter11,主要讲java的异常,里面很多内容收获良多,之前一直没注意过的. 一,Throwable类获得StackTraceElement ,可进行 ...
- 解压 .tar.xz 格式的压缩文件
第一种方法: xz -d mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64 ...
- 06_检测本机当前用户是否为超级管理员,如果是管理员,则使用 yum 安装 vsftpd,如果不是,则提示您非管理员(使用子串对比版本)
#!/bin/bashif [ $USER == "root" ];then #或者 if [ $UID -eq 0 ];then yum -y install vsftpd ...
- [Luogu] 1600
https://www.luogu.org/problemnew/show/P1600 nlogn竟然T了 #include <iostream> #include <cstdio& ...
- java枚举类型总结
java中的枚举类型是jdk1.5新增的一个东西,其本质是一个java.lang.Enum类的子类,每个枚举项是一个静态常量对象,由编译器为每个枚举项分配ordinal和name,其中ordinal是 ...
- P1968 美元汇率 怀疑智商超过海平面
https://www.luogu.org/problemnew/show/P1968 也是一道贪心题,一些计算: 然而我却弄得很复杂: 既然我们要的是最后的最大值,那我们为什么要注意中间的细节呢: ...
- Python3读写JSON文件
JSON简介 JSON(JavaScript Object Notation)即JavaScript对象表示法,一种轻量级,通用的文本数据格式. JSON语法支持对象(Object),数组(Array ...
- allowMultiQueries=true mybatis 要多行sql执行,一定要注意
allowMultiQueries=true 这个配置已经出现多次问题了,这次由于切换时多数据源,搞配置的同志不知道从哪里copy的配置,只换了我们的链接,我们之前配置了好多配置都丢失了,我的代码中有 ...
- java编写网站数据抓取
来公司已经俩月了,每天加班平均工时11个小时的我又想起了老东家温馨舒适安逸的生活.已经有好久没时间读博客写博客了,我觉得我退步了,嗯嗯,我很不开心 今天记录下抓数据的一些东西吧. 数据抓取现在是很普遍 ...