본문 바로가기
설치 및 기술 자료/Linux

[Linux] Redfish API 개념 및 사용방법

by 주식회사 서버몬 2024. 11. 19.

 

안녕하세요. 주식회사 서버몬 입니다.

오늘은 Redfish API 의 개념 과 사용방법에 대해서 알아 보도록 하겠습니다.

 

 

Redfish 란?

 데이터 센터, 서버, 스토리지, 네트워크 장치 등을 관리하기 위해 설계된 표준화된 관리 인터페이스입니다. DMTF(Distributed Management Task Force) 에서 개발한 이 API는 RESTful 프로토콜을 기반으로 하며,

기존 IPMI (Intelligent Platform Management Interface)를 대체하고

JSON과 HTTPS를 사용해 간단하고 효율적인 방식으로 하드웨어 관리 / 구성 변경을 제공합니다.

 

Redfish 어째서 사용해야 하는가?

기존 레거시 시스템인 IPMI 는 1998년 디자인되어 전용 프로그램이 필요하며 보안적으로 취약합니다.

그러나  Redfish 는 2015년 부터 디자인 및 개발이 되었으며  안전한 최신 프로그래밍 패러다임을 사용하여 개발된 클라이언트 스크립트를 이용하여 플랫폼 관리 테스크를 제어할 수 있습니다.

 

Redfish 환경 구성

 Redfish API 호출을 위한 BMC IP 주소를 구성합니다.

 

비 벤더 OpenIPMI 사용시

Rhel / Fedora
yum -y install ipmitool

Ubuntu / Debian
apt install -y ipmitool

커널 모듈 활성화
modprobe ipmi_devintf
modprobe ipmi_si


IPMI 현재 상태 조회
ipmitool lan print

Set in Progress         : Set Complete
Auth Type Support       : 
Auth Type Enable        : Callback : 
                        : User     : 
                        : Operator : 
                        : Admin    : 
                        : OEM      : 
IP Address Source       : DHCP Address
IP Address              : 0.0.0.0
Subnet Mask             : 0.0.0.0
MAC Address             : 2c:59:e5:40:85:2a
SNMP Community String   : 
BMC ARP Control         : ARP Responses Enabled, Gratuitous ARP Disabled
Default Gateway IP      : 0.0.0.0
802.1q VLAN ID          : Disabled
802.1q VLAN Priority    : 0
RMCP+ Cipher Suites     : 0,1,2,3
Cipher Suite Priv Max   : XuuaXXXXXXXXXXX
                        :     X=Cipher Suite Unused
                        :     c=CALLBACK
                        :     u=USER
                        :     o=OPERATOR
                        :     a=ADMIN
                        :     O=OEM

IPMI IP 설정
IPMI가 있는 모든 IBM 플랫폼에서는 LAN 인터페이스가 채널 번호 1에 지정됩니다.

ipmitool lan set <channel num> ipsrc static
ipmitool lan set <channel num> ipaddr <IPMI Remote IP>
ipmitool lan set <channel num> netmask <IPMI Subnet>
ipmitool lan set <channel num> defgw ipaddr <IPMI Gateway IP>
ipmitool lan set <channel num> arp respond on
ipmitool lan set <channel num> access on

적용을 위해 BMC 재시작
ipmitool bmc reset cold

IPMI User 생성
ipmitool user set name <user id> <user name>
ipmitool user set password <user id> 
ipmitool user priv <user id> <privilege level> [<channel num>]

Possible privilege levels are:
1   Callback level
2   User level
3   Operator level
4   Administrator level
5   OEM Proprietary level
15   No access

 

벤더 서버의 경우 아래 링크를 참고 합니다.

HPE , DELL 

 

RedFish API 호출 테스트

 Python 을 통해 RedFish API 를 호출 해보겠습니다.

사용한 환경은 Rocky Linux Python 버전은 3.9.18 입니다.

파이썬 환경구성
dnf install python3
pip install python-ilorest-library

 

Redfish 환경 설정

git clone https://github.com/HewlettPackard/python-ilorest-library.git
cd ./python-ilorest-library/examples/
vim quickstart_redfish.py 

SYSTEM_URL = "https://BMC IP"
LOGIN_ACCOUNT = "admin"
LOGIN_PASSWORD = "password"

위에서 사전 설정한 BMC 정보로 교체 합니다.

 

Redfish 테스트

수정한 파이선 코드를 실행합니다.
python3 quickstart_redfish.py


200
Allow GET, HEAD, PATCH
Cache-Control no-cache
Content-type application/json; charset=utf-8
Date Tue, 19 Nov 2024 07:49:48 GMT
ETag W/"76C20359"
Link </redfish/v1/SchemaStore/en/ComputerSystem.json>; rel=describedby
OData-Version 4.0
Transfer-Encoding chunked
X-Content-Type-Options nosniff
X-Frame-Options sameorigin
X-XSS-Protection 1; mode=block


{"@odata.context":"/redfish/v1/$metadata#ComputerSystem.ComputerSystem","@odata.etag":"W/\"76C20359\"","@odata.id":"/redfish/v1/Systems/1","@odata.type":"#ComputerSystem.v1_17_0.ComputerSystem","Id":"1","Actions":{"#ComputerSystem.Reset":{"ResetType@Redfish.AllowableValues":["On","ForceOff","GracefulShutdown","ForceRestart","Nmi","PushPowerButton","GracefulRestart"],"target":"/redfish/v1/Systems/1/Actions/ComputerSystem.Reset"}},"AssetTag":"","Bios":{"@odata.id":"/red
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


기본 구성된 스키마 정보인 "/redfish/v1/systems/1" 의 정보 전체를 Json 데이터로 반환 하는것을
확인 할 수 있습니다.

 

 

참고자료

HPE Redfish Document
Dell Redfish Document
IBM Redfish Document

 

1U서버 / 2U서버 / AI서버 / alyac / APC / APC UPS / backup / carepack / centos / chakramax / cuda / DAS / DB / DB서버 / defog / DEFOG랙 / dell5820 / dell5820t / dell7920 / dellpoweredge / dellr240 / dellr340 / dellr350 / dellr450 / dellr540 / dellr630 / dellr640 / dellr740 / dellr750 / dellserver / dellt40 / dellt440 / dellt5820 / dell서버 / DELL서버CPU / DELL서버RAID컨트롤러 / DELL서버SAS하드디스크 / DELL서버가격비교 / DELL서버가격비교견적 / DELL서버견적 / DELL서버구매 / DELL서버디스크교체 / DELL서버메모리 / dell서버서버몬 / DELL서버펌웨어 / DELL서버하드디스크구매 / dell옵션 / dell워크스테이션 / dl20 / dl20gen10 / dl20gen11 / dl360 / dl360gen10 / dl360gen11 / dl380 / dl380g10 / dl380gen10 / dl380gen11 / ECC메모리 / EDFOG랙가격 / embedded / est security / ESTSOFT / FIRMWARE / GPU / gpu서버 / gpu타워형서버 / greenlake / HA솔루션 / HP GPU / hp hdd / hpdl20 / HPDL20Gen10 / hpdl360 / hpdl360gen10 / hpdl380 / hpdl380g10 / HPDL380Gen10 / HPE / HPE GPU / hpe hdd / hpe rok / HPE Service Pack for Proliant / HPE SPP / hpe ssa / hpedl20 / hpedl20gen10 / hpedl360gen10 / hpe서버 / HPE서버CPU / HPE서버RAID컨트롤러 / HPE서버SAS하드디스크 / HPE서버가격비교 / HPE서버가격비교견적 / HPE서버견적 / HPE서버구매 / HPE서버드라이버설치 / HPE서버디스크교체 / HPE서버메모리 / HPE서버비용 / hpe서버소음 / HPE서버펌웨어 / HPE서버하드디스크구매 / hpe옵션 / hpe정품 / hpgen10 / hpml30 / hpserver / hpz2 / hpz4 / hpz4g4 / hpz6g4 / hpz8g4 / hp마이크로서버 / hp서버 / hp서버cto / hp서버pc / HP서버메모리 / hp서버소음 / hp서버컴퓨터 / HP서버파워 / HP서버펌웨어 / HP서버하드디스크 / hp옵션 / hp워크스테이션 / hp정품 / hp프로라이언트 / HYPER BACKUP / ibm서버 / ilo / Intelligent Provisioning / internetdisk / KVM / KVM 기술지원비(비용) / KVM 설치비 / L2스위치 / L3스위치 / LENONO서버SAS하드디스크 / lenovop620 / lenovor650 / LENOVO서버 / LENOVO서버CPU / LENOVO서버RAID컨트롤러 / LENOVO서버가격비교 / LENOVO서버가격비교견적 / LENOVO서버견적 / LENOVO서버구매 / LENOVO서버디스크교체 / LENOVO서버메모리 / LENOVO서버하드디스크구매 / LENOVO펌웨어업데이트 / Linux / ML30 / ml30gen10 / ml30gen11 / ML350GEN10 / ml350gen11 / ML360 / MS CSP / MSSQL / MSSQL 기술지원비(비용) / MSSQL 설치비 / MYSQL / MySQL 기술지원비(비용) / MySQL 설치비 / NAS / NVIDIA / Office 365 / oneview / orange / OS설치 / PA-410 / PA-440 / paloalto / poweredger740 / poweredger750 / precision5820 / QUADRO / r240 / r250 / r340 / r360 / r440 / r550 / r650 / r660 / r740 / r750xs / r760 / r760xs / RAID / redhat / RHEL설치 / RMS랙 / rocky / s100i / securedisk / server / serverpc / smart storage administrator / SPP / sql server / sr250 / sr650 / SYNOLOGY / SYNOLOGY나스 / t150 / t360 / UPS / UPS기술지원 / UPS납품 / UPS설치 / V3 / veeam / vroc / windows server / Windows서버설치 / XEON서버 / z8g4 / 가상서버 / 가성비서버 / 기술지원비(비용) / 나스기술지원 / 나스설치지원 / 네트워크스위치 / 네트워크장비 / 더블테이크 / 데이터베이스 / 델5820 / 델서버 / 델서버비용 / 델서버펌웨어업데이트 / 델옵션 / 델워크스테이션 / 델컴퓨터워크스테이션 / 디포그 / 디포그랙 / 디포그랙가격 / 딥러닝 / 딥러닝pc / 딥러닝서버 / 랙 / 랙(RACK) 기술지원비(비용) / 랙(RACK) 설치비 / 랙납품설치 / 랙설치 / 레노버p620 / 레노버서버 / 레노버워크스테이션 / 레노보서버 / 레노보서버펌웨어 / 레드헷설치 / 레이드 / 레이드구성 / 록키리눅스 / 리눅스 / 리눅스 기술지원비(비용) / 리눅스 설치비 / 리눅스서버 / 리눅스서버설치 / 리눅스서버트러블슈팅 / 리눅스트러블슈팅 / 문서보안 / 문서중앙화 / 미니서버 / 미니서버랙 / 미니서버렉 / 미디어서버 / 방화벽 / 방화벽 기술지원비(비용) / 방화벽 설치비 / 방화벽엔지니어 / 백업 / 백업 기술지원비(비용) / 백업 서버 / 백업서비스 / 백업솔루션 / 보안솔루션 / 보안솔루션구매 / 보안솔루션설치 / 보안툴 / 빔백업 / 샤크라맥스 / 서버 / 서버 기술지원비(비용) / 서 버 랙마운트비용 / 서버 설치비 / 서버 장애조치비용 / 서버CPU / 서버MEMORY / 서버OS설치 / 서버pc / 서버가격 / 서버가속기 / 서버견적 / 서버교체 / 서버구매 / 서버구입 / 서버구축 / 서버기술지원 / 서버납품 / 서버디스크장애처리 / 서버랙 / 서버렉 / 서버렉마운트 / 서버메모리 / 서버 몬 / 서버몬기술지원 / 서버백업 / 서버보안 / 서버부품 / 서버엔지니어 / 서버옵션 / 서버용GPU / 서버용PC / 서버용그래픽카드 / 서버용메모리 / 서버 / 컴퓨터 / 서버용하드디스크 / 서버재고 / 서버컴 / 서버컴퓨터 / 서버트러블슈팅 / 서버판매 / 서버하드 / 서버호스팅 / 스위치 / 스위치 기술지원비(비용) / 스위치 설치비 / 스토리지 / 스토리지 기술지원비(비용) / 스토리지 랙마운트비용 / 스토리지 설치비 / 스토리지 장애조치비용 / 스토리지납품설치 / 스토리지서버 / 시놀로지DS918 / 시놀로지HyperBackup / 시놀로지나스 / 시놀로지나스백업 / 시놀로지하이퍼백업 / 시큐어디스크 / 안랩 / 알약 / 앱서버 / 오피스 365 / 우분투설치 / 워크스테이션 / 워크스테이션pc / 워크스테이션컴퓨터 / 윈도우서버 / 윈도우서버2016 / 윈도우서버2019 / 윈도우서버2022 / 윈도우서버설치 / 윈도우서버컴퓨터 / 윈도우서버트러블슈팅 / 윈도우즈 기술지원비(비용) / 윈도우즈 설치비 / 이스트소프트 / 이스트 시큐리티 / 이중화솔루션 / 이중화솔루션구매 / 이중화솔루션설치 / 인터넷디스크 / 임베디드 / 저가서버 / 저렴한서버 / 정품서버 / 정품서버옵션 / 제온서버 / 젠서버 / 중고서버 / 중고워크스테이션 / 카보나이트 / 카스퍼스키 / 컴퓨터서버 / 케어팩 / 타워서버 / 타워형서버 / 팔로알토 / 페도라설치 / 프로라이언트

댓글