1.4.3. 클러스터 관리
이 섹션에서는 Ceph API를 사용하여 OSD에서 스크럽 또는 딥 스크럽을 초기화하고, 풀을 생성하거나 풀에서 데이터를 제거하거나 요청을 생성하는 방법을 설명합니다.
1.4.3.1. OSD에서 스케줄링된 프로세스를 어떻게 실행할 수 있습니까? 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
이 섹션에서는 OSD에서 RESTful API를 사용하여 스케줄링된 프로세스(예: 스크럽 또는 딥 스크럽)를 실행하는 방법을 설명합니다.
curl 명령
명령줄에서 다음을 사용합니다.
echo -En '{"command": "COMMAND"}' | curl --request POST --data @- --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/ID/command'
교체:
-
시작하려는 프로세스(
scrub,deep-scrub또는복구)와 함께COMMAND입니다. OSD에서 프로세스가 지원되는지 확인합니다. 자세한 내용은 1.4.1.9절. “OSD에서 어떤 프로세스를 예약할 수 있는지 어떻게 확인할 수 있습니까?” 을 참조하십시오. -
사용자 이름이 있는 사용자
-
활성
ceph-mgr인스턴스가 있는 노드의 IP 주소 또는 짧은 호스트 이름이 있는CEPH_MANAGER -
osd필드에 나열된 OSD의ID로 ID
메시지가 표시되면 사용자 암호를 입력합니다.
자체 서명된 인증서를 사용한 경우 --insecure 옵션을 사용합니다.
echo -En '{"command": "COMMAND"}' | curl --request POST --data @- --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/ID/command'
Python
Python 인터프리터에서 다음을 입력합니다.
$ python
>> import requests
>> result = requests.post('https://CEPH_MANAGER:8080/api/osd/ID/command', json={"command": "COMMAND"}, auth=("USER", "PASSWORD"))
>> print result.json()
교체:
-
활성
ceph-mgr인스턴스가 있는 노드의 IP 주소 또는 짧은 호스트 이름이 있는CEPH_MANAGER -
osd필드에 나열된 OSD의ID로 ID -
시작하려는 프로세스(
scrub,deep-scrub또는복구)와 함께COMMAND입니다. OSD에서 프로세스가 지원되는지 확인합니다. 자세한 내용은 1.4.1.9절. “OSD에서 어떤 프로세스를 예약할 수 있는지 어떻게 확인할 수 있습니까?” 을 참조하십시오. -
사용자 이름이 있는 사용자
-
사용자 암호를 사용하는 암호
자체 서명된 인증서를 사용한 경우 verify=False 옵션을 사용합니다.
$ python
>> import requests
>> result = requests.post('https://CEPH_MANAGER:8080/api/osd/ID/command', json={"command": "COMMAND"}, auth=("USER", "PASSWORD"), verify=False)
>> print result.json()