4.4. 스트레치 모드 사용 및 유지 관리


OSD 호스트를 추가하고, 데이터 센터 모니터 서비스 호스트를 관리하며, 쿼럼이 없는 모니터로 묶일러를 모니터로 교체하여 스트레치 모드를 사용 및 유지 관리합니다.

4.4.1. 스트레치 모드에서 OSD 호스트 추가

확장 모드에서 Ceph OSD를 추가할 수 있습니다. 절차는 스트레치 모드가 활성화되지 않은 클러스터에서 OSD 호스트를 추가하는 것과 유사합니다.

사전 요구 사항

  • 실행 중인 Red Hat Ceph Storage 클러스터.
  • 클러스터에서 활성화된 스트레치 모드입니다.
  • 노드에 대한 루트 수준 액세스.

프로세스

  1. OSD를 배포할 사용 가능한 장치를 나열합니다.

    구문

    ceph orch device ls [--hostname=HOST_1 HOST_2] [--wide] [--refresh]

    [ceph: root@host01 /]# ceph orch device ls

  2. 특정 호스트 또는 사용 가능한 모든 장치에 OSD를 배포합니다.

    • 특정 호스트의 특정 장치에서 OSD를 생성합니다.

      구문

      ceph orch daemon add osd HOST:DEVICE_PATH

      [ceph: root@host01 /]# ceph orch daemon add osd host03:/dev/sdb

    • 사용 가능한 사용되지 않는 장치에 OSD를 배포합니다.

      중요

      이 명령은 배치된 WAL 및 DB 장치를 생성합니다. 공동 배치되지 않은 장치를 생성하려면 이 명령을 사용하지 마십시오.

      [ceph: root@host01 /]# ceph orch apply osd --all-available-devices

  3. CRUSH 버킷 아래의 OSD 호스트를 이동합니다.

    구문

    ceph osd crush move HOST datacenter=DATACENTER

    [ceph: root@host01 /]# ceph osd crush move host03 datacenter=DC1
    [ceph: root@host01 /]# ceph osd crush move host06 datacenter=DC2

    참고

    두 사이트 모두에 동일한 토폴로지 노드를 추가해야 합니다. 호스트가 한 사이트에만 추가되면 문제가 발생할 수 있습니다.

4.4.2. 스트레치 모드에서 데이터 센터 모니터 서비스 호스트 관리

이 정보를 사용하여 스트레치 모드에서 데이터 센터 모니터 서비스(mon) 호스트를 추가하고 제거합니다. 데이터 센터 관리는 사양 파일을 사용하거나 Ceph 클러스터에서 직접 수행할 수 있습니다.

사전 요구 사항

시작하기 전에 다음 사전 요구 사항이 있는지 확인하십시오.

  • 실행 중인 Red Hat Ceph Storage 클러스터
  • 클러스터에서 활성화된 스트레치 모드
  • 노드에 대한 루트 수준 액세스.

4.4.2.1. 서비스 사양 파일을 사용하여 mon 서비스 관리

이 단계에서는 mon 서비스를 추가하는 방법을 자세히 설명합니다. 서비스를 제거하려면 필요한 정보를 제거하여 서비스 사양 파일을 업데이트하는 동일한 단계를 사용합니다.

프로세스

  1. mon에 대한 사양 파일을 내보내고 출력을 mon-spec.yaml 에 저장합니다.

    구문

    ceph orch ls mon --export > mon-spec.yaml

    파일을 내보낸 후 YAML 파일을 편집할 수 있습니다.

  2. 새 호스트 세부 정보를 추가합니다. 다음 예에서 host08 이 클러스터에 DC2 데이터 센터 버킷에 추가되고 있습니다.

    구문

    service_type: host
    addr: 10.1.172.225
    hostname: host08
    labels:
    - mon
    ---
    service_type: mon
    service_name: mon
    placement:
     label: mon
    spec:
     crush_locations:
       host01:
       - datacenter=DC1
      host02:
       - datacenter=DC1
      host03:
       - datacenter=DC1
       host04:
       - datacenter=DC2
       host05:
       - datacenter=DC2
       host06:
       - datacenter=DC2
       host08:
       - datacenter=DC2

  3. 사양 파일을 적용합니다.

    구문

    ceph orch apply -i mon-spec.yaml

    [ceph: root@host01 /]# eph orch apply -i mon-spec.yaml
    Added host 'host08' with addr '10.1.172.225'
    Scheduled mon update...

확인

  1. ceph mon dump 명령을 사용하여 mon 서비스가 배포되었고 적절한 CRUSH 위치가 모니터에 추가되었는지 확인합니다.

    [ceph: root@host01 /]# ceph mon dump
    epoch 16
    fsid ff19789c-f5c7-11ef-8e1c-fa163e4e1f7e
    last_changed 2025-02-28T12:12:51.089706+0000
    created 2025-02-28T11:34:59.325503+0000
    min_mon_release 19 (squid)
    election_strategy: 3
    stretch_mode_enabled 1
    tiebreaker_mon host07
    disallowed_leaders host07
    0: [v2:10.0.56.37:3300/0,v1:10.0.56.37:6789/0] mon.host01; crush_location {datacenter=DC1}
    1: [v2:10.0.59.188:3300/0,v1:10.0.59.188:6789/0] mon.host05; crush_location {datacenter=DC2}
    2: [v2:10.0.59.35:3300/0,v1:10.0.59.35:6789/0] mon.host02; crush_location {datacenter=DC1}
    3: [v2:10.0.56.189:3300/0,v1:10.0.56.189:6789/0] mon.host07; crush_location {datacenter=DC3}
    4: [v2:10.0.56.13:3300/0,v1:10.0.56.13:6789/0] mon.host04; crush_location {datacenter=DC2}
    dumped monmap epoch 16

  2. ceph orch host ls 를 사용하여 호스트가 클러스터에 추가되었는지 확인합니다.

    [ceph: root@host01 /]# ceph orch host ls
    HOST                                        ADDR         LABELS       STATUS
    host01            10.0.56.37   mgr,mon,osd
    host02            10.0.59.35   mgr,mon,osd
    host03            10.0.58.106  osd,mds,rgw
    host04            10.0.56.13   osd,mon,mgr
    host05            10.0.59.188  mgr,mon,osd
    host06            10.0.56.223  rgw,mds,osd
    host07            10.0.56.189  _admin,mon
    7 hosts in cluster

4.4.2.2. 명령줄 인터페이스를 사용하여 mon 서비스 관리

이 단계에서는 mon 서비스를 추가하는 방법을 자세히 설명합니다. 서비스를 제거하려면 필요한 정보를 제거하고 CLI로 업데이트하는 것과 동일한 단계를 사용합니다.

프로세스

  1. 모니터 서비스를 Unmanaged 로 설정합니다.

    구문

    ceph orch set-unmanaged mon

  2. 선택 사항: ceph orch ls 명령을 사용하여 서비스가 예상대로 설정되었는지 확인합니다.

    [ceph: root@host01 /]# ceph orch host ls
    NAME                                 PORTS             RUNNING  REFRESHED  AGE  PLACEMENT
    mon                                                        8/8  10m ago    19s  <unmanaged>

  3. mon 레이블이 있는 새 호스트를 추가합니다.

    구문

    ceph orch host add HOST_NAME IP_ADDRESS_OF_HOST [--label=LABEL_NAME_1,LABEL_NAME_2]

    [ceph: root@host01 /]# ceph orch host add host08 10.1.172.205 --labels=mon

  4. CRUSH 위치로 모니터 서비스를 추가합니다.

    참고

    현재 mon은 실행 중이 아니며 Cephadm에서 관리하지 않습니다.

    구문

    ceph mon add NODE:_IP_ADDRESS_ datacenter=DC2

    [ceph: root@host01 /]# ceph mon add host08:10.1.172.205 datacenter=DC2

  5. Cephadm을 사용하여 모니터 데몬을 배포합니다.

    구문

    ceph orch daemon add mon host08

    [ceph: root@host01 /]# ceph orch daemon add mon host08
    Deployed mon.host08 on host 'host08'

  6. 모니터 서비스에 대해 Cephadm 관리를 활성화합니다.

    구문

    ceph orch set-managed mon

  7. 새로 추가된 mon 데몬을 시작합니다.

    구문

    ceph orch set-managed mgr

확인

서비스, 모니터링 및 호스트가 추가 및 실행 중인지 확인합니다.

  1. ceph orch ls 명령을 사용하여 서비스가 실행 중인지 확인합니다.

    [ceph: root@host01 /]# ceph orch host ls
    NAME                                 PORTS             RUNNING  REFRESHED  AGE  PLACEMENT
    mon                                                        8/8  7m ago     4d   label:mon

  2. ceph mon dump 명령을 사용하여 mon 서비스가 배포되었고 적절한 CRUSH 위치가 모니터에 추가되었는지 확인합니다.

    [ceph: root@host01 /]# ceph mon dump
    epoch 16
    fsid ff19789c-f5c7-11ef-8e1c-fa163e4e1f7e
    last_changed 2025-02-28T12:12:51.089706+0000
    created 2025-02-28T11:34:59.325503+0000
    min_mon_release 19 (squid)
    election_strategy: 3
    stretch_mode_enabled 1
    tiebreaker_mon host07
    disallowed_leaders host07
    0: [v2:10.0.56.37:3300/0,v1:10.0.56.37:6789/0] mon.host01; crush_location {datacenter=DC1}
    1: [v2:10.0.59.188:3300/0,v1:10.0.59.188:6789/0] mon.host05; crush_location {datacenter=DC2}
    2: [v2:10.0.59.35:3300/0,v1:10.0.59.35:6789/0] mon.host02; crush_location {datacenter=DC1}
    3: [v2:10.0.56.189:3300/0,v1:10.0.56.189:6789/0] mon.host07; crush_location {datacenter=DC3}
    4: [v2:10.0.56.13:3300/0,v1:10.0.56.13:6789/0] mon.host04; crush_location {datacenter=DC2}
    dumped monmap epoch 16

  3. ceph orch host ls commmand를 사용하여 호스트가 클러스터에 추가되었는지 확인합니다.

    [ceph: root@host01 /]# ceph orch host ls
    HOST                                        ADDR         LABELS       STATUS
    host01            10.0.56.37   mgr,mon,osd
    host02            10.0.59.35   mgr,mon,osd
    host03            10.0.58.106  osd,mds,rgw
    host04            10.0.56.13   osd,mon,mgr
    host05            10.0.59.188  mgr,mon,osd
    host06            10.0.56.223  rgw,mds,osd
    host07            10.0.56.189  _admin,mon
    7 hosts in cluster

4.4.3. 쿼럼의 모니터로 tiebreaker 교체

tiebreaker 모니터가 실패하면 쿼럼의 기존 모니터로 교체하여 클러스터에서 제거할 수 있습니다.

사전 요구 사항

  • 실행 중인 Red Hat Ceph Storage 클러스터
  • 클러스터에서 스트레치 모드 활성화

프로세스

  1. 자동화된 모니터 배포를 비활성화합니다.

    [ceph: root@host01 /]# ceph orch apply mon --unmanaged
    
    Scheduled mon update…

  2. 쿼럼의 모니터를 확인합니다.

    [ceph: root@host01 /]# ceph -s
    
    mon: 5 daemons, quorum host01, host02, host04, host05 (age 30s), out of quorum: host07

  3. 쿼럼의 모니터를 새 짝수로 설정합니다.

    구문

    ceph mon set_new_tiebreaker NEW_HOST

    [ceph: root@host01 /]# ceph mon set_new_tiebreaker host02

    중요

    모니터가 기존 non-tiebreaker 모니터와 동일한 위치에 있는 경우 오류 메시지가 표시됩니다.

    [ceph: root@host01 /]# ceph mon set_new_tiebreaker host02
    
    Error EINVAL: mon.host02 has location DC1, which matches mons host02 on the datacenter dividing bucket for stretch mode.

    이 경우 모니터의 위치를 변경합니다.

    구문

    ceph mon set_location HOST datacenter=DATACENTER

    [ceph: root@host01 /]# ceph mon set_location host02 datacenter=DC3

  4. 실패한 연결 모니터를 제거합니다.

    구문

    ceph orch daemon rm FAILED_TIEBREAKER_MONITOR --force

    [ceph: root@host01 /]# ceph orch daemon rm mon.host07 --force
    
    Removed mon.host07 from host 'host07'

  5. 모니터가 호스트에서 제거되면 모니터를 재배포합니다.

    구문

    ceph mon add HOST IP_ADDRESS datacenter=DATACENTER
    ceph orch daemon add mon HOST

    [ceph: root@host01 /]# ceph mon add host07 213.222.226.50 datacenter=DC1
    [ceph: root@host01 /]# ceph orch daemon add mon host07

  6. 쿼럼에 모니터 5개가 있는지 확인합니다.

    [ceph: root@host01 /]# ceph -s
    
    mon: 5 daemons, quorum host01, host02, host04, host05, host07 (age 15s)

  7. 모든 항목이 올바르게 구성되었는지 확인합니다.

    [ceph: root@host01 /]# ceph mon dump
    
    epoch 19
    fsid 1234ab78-1234-11ed-b1b1-de456ef0a89d
    last_changed 2023-01-17T04:12:05.709475+0000
    created 2023-01-16T05:47:25.631684+0000
    min_mon_release 16 (pacific)
    election_strategy: 3
    stretch_mode_enabled 1
    tiebreaker_mon host02
    disallowed_leaders host02
    0: [v2:132.224.169.63:3300/0,v1:132.224.169.63:6789/0] mon.host02; crush_location {datacenter=DC3}
    1: [v2:220.141.179.34:3300/0,v1:220.141.179.34:6789/0] mon.host04; crush_location {datacenter=DC2}
    2: [v2:40.90.220.224:3300/0,v1:40.90.220.224:6789/0] mon.host01; crush_location {datacenter=DC1}
    3: [v2:60.140.141.144:3300/0,v1:60.140.141.144:6789/0] mon.host07; crush_location {datacenter=DC1}
    4: [v2:186.184.61.92:3300/0,v1:186.184.61.92:6789/0] mon.host03; crush_location {datacenter=DC2}
    dumped monmap epoch 19

  8. 모니터를 재배포합니다.

    구문

    ceph orch apply mon --placement="HOST_1, HOST_2, HOST_3, HOST_4, HOST_5

    [ceph: root@host01 /]# ceph orch apply mon --placement="host01, host02, host04, host05, host07"
    
    Scheduled mon update...

4.4.4. 연결기를 새 모니터로 교체

tiebreaker 모니터가 실패하면 새 모니터로 교체하여 클러스터에서 제거할 수 있습니다.

사전 요구 사항

시작하기 전에 다음 사전 요구 사항이 있는지 확인하십시오.

  • 실행 중인 Red Hat Ceph Storage 클러스터
  • 클러스터에서 활성화된 스트레치 모드

프로세스

  1. 클러스터에 새 모니터를 추가합니다.

    1. 새 모니터에 crush_location 을 수동으로 추가합니다.

      구문

      ceph mon add NEW_HOST IP_ADDRESS datacenter=DATACENTER

      [ceph: root@host01 /]# ceph mon add host06 213.222.226.50 datacenter=DC3
      
      adding mon.host06 at [v2:213.222.226.50:3300/0,v1:213.222.226.50:6789/0]

      참고

      새 모니터는 기존의 비티베이터 모니터와 다른 위치에 있어야 합니다.

    2. 자동화된 모니터 배포를 비활성화합니다.

      [ceph: root@host01 /]# ceph orch apply mon --unmanaged
      
      Scheduled mon update…

    3. 새 모니터를 배포합니다.

      구문

      ceph orch daemon add mon NEW_HOST

      [ceph: root@host01 /]# ceph orch daemon add mon host06

  2. 쿼럼에 6개의 모니터가 있는지 확인합니다.

    [ceph: root@host01 /]# ceph -s
    
    mon: 6 daemons, quorum host01, host02, host04, host05, host06 (age 30s), out of quorum: host07

  3. 새 모니터를 새 연결 관리자로 설정합니다.

    구문

    ceph mon set_new_tiebreaker NEW_HOST

    [ceph: root@host01 /]# ceph mon set_new_tiebreaker host06

  4. 실패한 연결 모니터를 제거합니다.

    구문

    ceph orch daemon rm FAILED_TIEBREAKER_MONITOR --force

    [ceph: root@host01 /]# ceph orch daemon rm mon.host07 --force
    
    Removed mon.host07 from host 'host07'

  5. 모든 항목이 올바르게 구성되었는지 확인합니다.

    [ceph: root@host01 /]# ceph mon dump
    
    epoch 19
    fsid 1234ab78-1234-11ed-b1b1-de456ef0a89d
    last_changed 2023-01-17T04:12:05.709475+0000
    created 2023-01-16T05:47:25.631684+0000
    min_mon_release 16 (pacific)
    election_strategy: 3
    stretch_mode_enabled 1
    tiebreaker_mon host06
    disallowed_leaders host06
    0: [v2:213.222.226.50:3300/0,v1:213.222.226.50:6789/0] mon.host06; crush_location {datacenter=DC3}
    1: [v2:220.141.179.34:3300/0,v1:220.141.179.34:6789/0] mon.host04; crush_location {datacenter=DC2}
    2: [v2:40.90.220.224:3300/0,v1:40.90.220.224:6789/0] mon.host01; crush_location {datacenter=DC1}
    3: [v2:60.140.141.144:3300/0,v1:60.140.141.144:6789/0] mon.host02; crush_location {datacenter=DC1}
    4: [v2:186.184.61.92:3300/0,v1:186.184.61.92:6789/0] mon.host05; crush_location {datacenter=DC2}
    dumped monmap epoch 19

  6. 모니터를 재배포합니다.

    구문

    ceph orch apply mon --placement="HOST_1, HOST_2, HOST_3, HOST_4, HOST_5

    [ceph: root@host01 /]# ceph orch apply mon --placement="host01, host02, host04, host05, host06"
    
    Scheduled mon update…

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동