3.5. Red Hat Ceph Storage 배포


3.5.1. 노드 사전 배포 단계

Red Hat Ceph Storage Ceph 클러스터를 설치하기 전에 다음 단계를 수행하여 필요한 모든 요구 사항을 충족하십시오.

  1. 모든 노드를 Red Hat Network 또는 Red Hat Satellite에 등록하고 유효한 풀을 구독하십시오.

    subscription-manager register
    subscription-manager subscribe --pool=8a8XXXXXX9e0
  2. 다음 리포지토리의 Ceph 클러스터에 있는 모든 노드에 대한 액세스를 활성화합니다.

    • rhel9-for-x86_64-baseos-rpms
    • rhel9-for-x86_64-appstream-rpms

      subscription-manager repos --disable="*" --enable="rhel9-for-x86_64-baseos-rpms" --enable="rhel9-for-x86_64-appstream-rpms"
  3. 운영 체제 RPM을 최신 버전으로 업데이트하고 필요한 경우 재부팅합니다.

    dnf update -y
    reboot
  4. 부트스트랩 노드가 될 클러스터에서 노드를 선택합니다. 이 예제에서 ceph1 은 부트 스트랩 노드입니다.

    부트스트랩 노드 ceph1 에서만 ansible-2.9-for-rhel-9-x86_64-rpmsrhceph-6-tools-for-rhel-9-x86_64-rpms 리포지토리를 활성화합니다.

    subscription-manager repos --enable="ansible-2.9-for-rhel-9-x86_64-rpms" --enable="rhceph-6-tools-for-rhel-9-x86_64-rpms"
  5. 모든 호스트에서 베어/short 호스트 이름을 사용하여 호스트 이름을 구성합니다.

    hostnamectl set-hostname <short_name>
  6. cephadm 을 사용하여 Red Hat Ceph Storage를 배포하기 위한 호스트 이름 구성을 확인합니다.

    $ hostname

    출력 예:

    ceph1
  7. /etc/hosts 파일을 수정하고 DNS 도메인 이름으로 DOMAIN 변수를 설정하여 fqdn 항목을 127.0.0.1 IP에 추가합니다.

    DOMAIN="example.domain.com"
    
    cat <<EOF >/etc/hosts
    127.0.0.1 $(hostname).${DOMAIN} $(hostname) localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1       $(hostname).${DOMAIN} $(hostname) localhost6 localhost6.localdomain6
    EOF
  8. hostname -f 옵션을 사용하여 fqdn 인 긴 호스트 이름을 확인합니다.

    $ hostname -f

    출력 예:

    ceph1.example.domain.com
    참고

    이러한 변경이 필요한 이유에 대한 자세한 내용은 정규화된 도메인 이름과 베어 호스트 이름을 참조하십시오.

  9. 부트 스트랩 노드에서 다음 단계를 실행합니다. 이 예제에서 부트스트랩 노드는 ceph1 입니다.

    1. cephadm-ansible RPM 패키지를 설치합니다.

      $ sudo dnf install -y cephadm-ansible
      중요

      ansible 플레이북을 실행하려면 Red Hat Ceph Storage 클러스터에 구성된 모든 노드에 대해 ssh 암호가 없는 액세스 권한이 있어야 합니다. 구성된 사용자(예: deployment-user)에 암호 없이 sudo 명령을 호출할 수 있는 root 권한이 있는지 확인합니다.

    2. 사용자 지정 키를 사용하려면 선택한 사용자(예: deployment-user) ssh 구성 파일을 구성하여 ssh를 통해 노드에 연결하는 데 사용할 id/key를 지정합니다.

      cat <<EOF > ~/.ssh/config
      Host ceph*
         User deployment-user
         IdentityFile ~/.ssh/ceph.pem
      EOF
    3. ansible 인벤토리 빌드

      cat <<EOF > /usr/share/cephadm-ansible/inventory
      ceph1
      ceph2
      ceph3
      ceph4
      ceph5
      ceph6
      ceph7
      [admin]
      ceph1
      ceph4
      EOF
      참고

      여기에서 두 개의 다른 데이터 센터에 속하는 호스트( Ceph1 및 Ceph4)는 인벤토리 파일에서 [admin] 그룹의 일부로 구성되며 cephadm 에 의해 _admin 으로 태그됩니다. 이러한 각 관리 노드는 부트스트랩 프로세스 중에 admin ceph 인증 키를 수신하므로 하나의 데이터 센터가 다운되면 사용 가능한 다른 관리 노드를 사용하여 확인할 수 있습니다.

    4. ansible 에서 pre-flight 플레이북을 실행하기 전에 ping 모듈을 사용하여 모든 노드에 액세스할 수 있는지 확인합니다.

      $ ansible -i /usr/share/cephadm-ansible/inventory -m ping all -b

      출력 예:

      ceph6 | SUCCESS => {
          "ansible_facts": {
              "discovered_interpreter_python": "/usr/libexec/platform-python"
          },
          "changed": false,
          "ping": "pong"
      }
      ceph4 | SUCCESS => {
          "ansible_facts": {
              "discovered_interpreter_python": "/usr/libexec/platform-python"
          },
          "changed": false,
          "ping": "pong"
      }
      ceph3 | SUCCESS => {
          "ansible_facts": {
              "discovered_interpreter_python": "/usr/libexec/platform-python"
          },
          "changed": false,
          "ping": "pong"
      }
      ceph2 | SUCCESS => {
          "ansible_facts": {
              "discovered_interpreter_python": "/usr/libexec/platform-python"
          },
          "changed": false,
          "ping": "pong"
      }
      ceph5 | SUCCESS => {
          "ansible_facts": {
              "discovered_interpreter_python": "/usr/libexec/platform-python"
          },
          "changed": false,
          "ping": "pong"
      }
      ceph1 | SUCCESS => {
          "ansible_facts": {
              "discovered_interpreter_python": "/usr/libexec/platform-python"
          },
          "changed": false,
          "ping": "pong"
      }
      ceph7 | SUCCESS => {
          "ansible_facts": {
              "discovered_interpreter_python": "/usr/libexec/platform-python"
          },
          "changed": false,
          "ping": "pong"
      }
    5. /usr/share/cephadm-ansible 디렉터리로 이동합니다.
    6. 상대 파일 경로를 사용하여 ansible-playbook을 실행합니다.

      $ ansible-playbook -i /usr/share/cephadm-ansible/inventory /usr/share/cephadm-ansible/cephadm-preflight.yml --extra-vars "ceph_origin=rhcs"

      preflight Playbook Ansible 플레이북은 RHCS dnf 리포지토리를 구성하고 부트스트랩을 위해 스토리지 클러스터를 준비합니다. podman,lvm2, chronyd 및 cephadm도 설치합니다. cephadm-ansiblecephadm-preflight.yml 의 기본 위치는 /usr/share/cephadm-ansible 입니다. 자세한 내용은 preflight Playbook 실행을참조하십시오.

3.5.2. cephadm 유틸리티를 사용한 클러스터 부트스트랩 및 서비스 배포

cephadm 유틸리티는 cephadm bootstrap 명령이 실행되는 로컬 노드에서 새 Red Hat Ceph Storage 클러스터에 대한 단일 Ceph Monitor 데몬과 Ceph Manager 데몬을 설치하고 시작합니다.

이 가이드에서는 클러스터를 부트스트랩하고 클러스터 사양 yaml 파일을 사용하여 한 단계로 필요한 모든 Red Hat Ceph Storage 서비스를 배포합니다.

배포 중에 문제가 발견되면 배포를 두 단계로 나누어 오류 문제를 보다 쉽게 해결할 수 있습니다.

  1. 부트스트랩
  2. 서비스 배포
참고

부트스트랩 프로세스에 대한 자세한 내용은 새 스토리지 클러스터 부팅을 참조하십시오.

절차

  1. 다음과 같이 json 파일을 사용하여 컨테이너 레지스트리에 대해 인증할 json 파일을 생성합니다.

    $ cat <<EOF > /root/registry.json
    {
     "url":"registry.redhat.io",
     "username":"User",
     "password":"Pass"
    }
    EOF
  2. Red Hat Ceph Storage 클러스터에 노드를 추가하고 서비스 표 3.1을 실행해야 하는 위치에 대한 특정 레이블을 설정하는 cluster-spec.yaml 을 생성합니다.

    cat <<EOF > /root/cluster-spec.yaml
    service_type: host
    addr: 10.0.40.78  ## <XXX.XXX.XXX.XXX>
    hostname: ceph1   ##  <ceph-hostname-1>
    location:
      root: default
      datacenter: DC1
    labels:
      - osd
      - mon
      - mgr
    ---
    service_type: host
    addr: 10.0.40.35
    hostname: ceph2
    location:
      datacenter: DC1
    labels:
      - osd
      - mon
    ---
    service_type: host
    addr: 10.0.40.24
    hostname: ceph3
    location:
      datacenter: DC1
    labels:
      - osd
      - mds
      - rgw
    ---
    service_type: host
    addr: 10.0.40.185
    hostname: ceph4
    location:
      root: default
      datacenter: DC2
    labels:
      - osd
      - mon
      - mgr
    ---
    service_type: host
    addr: 10.0.40.88
    hostname: ceph5
    location:
      datacenter: DC2
    labels:
      - osd
      - mon
    ---
    service_type: host
    addr: 10.0.40.66
    hostname: ceph6
    location:
      datacenter: DC2
    labels:
      - osd
      - mds
      - rgw
    ---
    service_type: host
    addr: 10.0.40.221
    hostname: ceph7
    labels:
      - mon
    ---
    service_type: mon
    placement:
      label: "mon"
    ---
    service_type: mds
    service_id: cephfs
    placement:
      label: "mds"
    ---
    service_type: mgr
    service_name: mgr
    placement:
      label: "mgr"
    ---
    service_type: osd
    service_id: all-available-devices
    service_name: osd.all-available-devices
    placement:
      label: "osd"
    spec:
      data_devices:
        all: true
    ---
    service_type: rgw
    service_id: objectgw
    service_name: rgw.objectgw
    placement:
      count: 2
      label: "rgw"
    spec:
      rgw_frontend_port: 8080
    EOF
  3. 부트스트랩 노드에서 구성된 Red Hat Ceph Storage 공용 네트워크를 사용하여 NIC의 IP를 검색합니다. 10.0.40.0 을 ceph 공용 네트워크에 정의된 서브넷으로 대체한 후 다음 명령을 실행합니다.

    $ ip a | grep 10.0.40

    출력 예:

    10.0.40.78
  4. 클러스터의 초기 모니터 노드가 될 노드에서 cephadm bootstrap 명령을 root 사용자로 실행합니다. IP_ADDRESS 옵션은 cephadm bootstrap 명령을 실행하는 데 사용 중인 노드의 IP 주소입니다.

    참고

    암호 없는 SSH 액세스를 위해 root 대신 다른 사용자를 구성한 경우 cepadm bootstrap 명령과 함께 --ssh-user= 플래그를 사용합니다.

    default/id_rsa ssh 키 이름을 사용하는 경우 cephadm 명령과 함께 --ssh-private-key--ssh-public-key 옵션을 사용합니다.

    $ cephadm  bootstrap --ssh-user=deployment-user --mon-ip 10.0.40.78 --apply-spec /root/cluster-spec.yaml --registry-json /root/registry.json
    중요

    로컬 노드에서 FQDN(정규화된 도메인 이름)을 사용하는 경우 명령줄에서 --allow-fqdn-hostname 옵션을 cephadm bootstrap에 추가합니다.

    부트스트랩이 완료되면 이전 cephadm bootstrap 명령의 다음 출력이 표시됩니다.

    You can access the Ceph CLI with:
    
    	sudo /usr/sbin/cephadm shell --fsid dd77f050-9afe-11ec-a56c-029f8148ea14 -c /etc/ceph/ceph.conf -k /etc/ceph/ceph.client.admin.keyring
    
    Consider enabling telemetry to help improve Ceph:
    
    	ceph telemetry on
    
    For more information see:
    
    	https://docs.ceph.com/docs/pacific/mgr/telemetry/
  5. ceph1의 Ceph CLI 클라이언트를 사용하여 Red Hat Ceph Storage 클러스터 배포 상태를 확인합니다.

    $ ceph -s

    출력 예:

    cluster:
      id:     3a801754-e01f-11ec-b7ab-005056838602
      health: HEALTH_OK
    
    services:
      mon: 5 daemons, quorum ceph1,ceph2,ceph4,ceph5,ceph7 (age 4m)
      mgr: ceph1.khuuot(active, since 5m), standbys: ceph4.zotfsp
      osd: 12 osds: 12 up (since 3m), 12 in (since 4m)
      rgw: 2 daemons active (2 hosts, 1 zones)
    
    data:
      pools:   5 pools, 107 pgs
      objects: 191 objects, 5.3 KiB
      usage:   105 MiB used, 600 GiB / 600 GiB avail
               105 active+clean
    참고

    모든 서비스를 시작하는 데 몇 분이 걸릴 수 있습니다.

    OSD가 구성된 동안 글로벌 복구 이벤트를 가져오는 것은 정상입니다.

    ceph orch psceph orch ls 를 사용하여 서비스 상태를 추가로 확인할 수 있습니다.

  6. 모든 노드가 cephadm 클러스터의 일부인지 확인합니다.

    $ ceph orch host ls

    출력 예:

    HOST   ADDR          LABELS  STATUS
    ceph1  10.0.40.78    _admin osd mon mgr
    ceph2  10.0.40.35    osd mon
    ceph3  10.0.40.24    osd mds rgw
    ceph4  10.0.40.185   osd mon mgr
    ceph5  10.0.40.88    osd mon
    ceph6  10.0.40.66    osd mds rgw
    ceph7  10.0.40.221   mon
    참고

    ceph1 이 [admin] 그룹의 일부로 cephadm-ansible 인벤토리에 구성되어 있으므로 호스트에서 직접 Ceph 명령을 실행할 수 있습니다. cephadm 부트스트랩 프로세스 중에 Ceph 관리자 키가 호스트에 복사되었습니다.

  7. 데이터센터에서 Ceph 모니터 서비스의 현재 배치를 확인합니다.

    $ ceph orch ps | grep mon | awk '{print $1 " " $2}'

    출력 예:

    mon.ceph1 ceph1
    mon.ceph2 ceph2
    mon.ceph4 ceph4
    mon.ceph5 ceph5
    mon.ceph7 ceph7
  8. 데이터센터에서 Ceph 관리자 서비스의 현재 배치를 확인합니다.

    $ ceph orch ps | grep mgr | awk '{print $1 " " $2}'

    출력 예:

    mgr.ceph2.ycgwyz ceph2
    mgr.ceph5.kremtt ceph5
  9. ceph osd crush 맵 레이아웃을 확인하여 각 호스트에 하나의 OSD가 구성되어 있고 상태가 UP 인지 확인합니다. 또한 표 3.1에 지정된 대로 각 노드가 올바른 데이터 센터 버킷 아래에 있는지 다시 확인하십시오.

    $ ceph osd tree

    출력 예:

    ID   CLASS  WEIGHT   TYPE NAME           STATUS  REWEIGHT  PRI-AFF
    -1          0.87900  root default
    -16         0.43950      datacenter DC1
    -11         0.14650          host ceph1
      2    ssd  0.14650              osd.2       up   1.00000  1.00000
     -3         0.14650          host ceph2
      3    ssd  0.14650              osd.3       up   1.00000  1.00000
    -13         0.14650          host ceph3
      4    ssd  0.14650              osd.4       up   1.00000  1.00000
    -17         0.43950      datacenter DC2
     -5         0.14650          host ceph4
      0    ssd  0.14650              osd.0       up   1.00000  1.00000
     -9         0.14650          host ceph5
      1    ssd  0.14650              osd.1       up   1.00000  1.00000
     -7         0.14650          host ceph6
      5    ssd  0.14650              osd.5       up   1.00000  1.00000
  10. 새 RDB 블록 풀을 만들고 활성화합니다.

    $ ceph osd pool create 32 32
    $ ceph osd pool application enable rbdpool rbd
    참고

    명령 끝에 있는 숫자 32는 이 풀에 할당된 PG 수입니다. PG 수는 클러스터의 OSD 수, 풀에서 예상되는 % 등과 같은 여러 요인에 따라 다를 수 있습니다. 다음 계산기를 사용하여 필요한 PG 수를 확인할 수 있습니다. 풀당 Ceph 배치 그룹(PG) 계산기입니다.

  11. RBD 풀이 생성되었는지 확인합니다.

    $ ceph osd lspools | grep rbdpool

    출력 예:

     3 rbdpool
  12. MDS 서비스가 활성화되어 있으며 각 데이터 센터에 하나의 서비스가 있는지 확인합니다.

    $ ceph orch ps | grep mds

    출력 예:

    mds.cephfs.ceph3.cjpbqo    ceph3               running (17m)   117s ago  17m    16.1M        -  16.2.9
    mds.cephfs.ceph6.lqmgqt    ceph6               running (17m)   117s ago  17m    16.1M        -  16.2.9
  13. CephFS 볼륨을 생성합니다.

    $ ceph fs volume create cephfs
    참고

    ceph fs volume create 명령은 필요한 데이터 및 메타 CephFS 풀도 생성합니다. 자세한 내용은 Ceph 파일 시스템 구성 및 마운트 를 참조하십시오.

  14. Ceph 상태를 확인하여 MDS 데몬이 어떻게 배포되었는지 확인합니다. ceph6 이 이 파일 시스템의 기본 MDS이고 ceph3 이 보조 MDS인 상태가 활성 상태인지 확인합니다.

    $ ceph fs status

    출력 예:

    cephfs - 0 clients
    ======
    RANK  STATE           MDS             ACTIVITY     DNS    INOS   DIRS   CAPS
     0    active  cephfs.ceph6.ggjywj  Reqs:    0 /s    10     13     12      0
           POOL           TYPE     USED  AVAIL
    cephfs.cephfs.meta  metadata  96.0k   284G
    cephfs.cephfs.data    data       0    284G
        STANDBY MDS
    cephfs.ceph3.ogcqkl
  15. RGW 서비스가 활성 상태인지 확인합니다.

    $ ceph orch ps | grep rgw

    출력 예:

    rgw.objectgw.ceph3.kkmxgb  ceph3  *:8080       running (7m)      3m ago   7m    52.7M        -  16.2.9
    rgw.objectgw.ceph6.xmnpah  ceph6  *:8080       running (7m)      3m ago   7m    53.3M        -  16.2.9

3.5.3. Red Hat Ceph Storage 확장 모드 구성

cephadm 을 사용하여 Red Hat Ceph Storage 클러스터가 완전히 배포되면 다음 절차를 사용하여 확장 클러스터 모드를 구성합니다. 새로운 스트레치 모드는 2개의 사이트 케이스를 처리하도록 설계되었습니다.

절차

  1. 모니터에서 ceph mon dump 명령을 사용하여 현재 사용 중인 선택 전략을 확인합니다. 기본적으로 ceph 클러스터에서 연결은 클래식으로 설정됩니다.

    ceph mon dump | grep election_strategy

    출력 예:

    dumped monmap epoch 9
    election_strategy: 1
  2. 모니터 선택을 연결로 변경합니다.

    ceph mon set election_strategy connectivity
  3. 이전 ceph mon dump 명령을 다시 실행하여 election_strategy 값을 확인합니다.

    $ ceph mon dump | grep election_strategy

    출력 예:

    dumped monmap epoch 10
    election_strategy: 3

    다양한 선택 전략에 대해 자세히 알아보려면 모니터 선택 전략 구성을 참조하십시오.

  4. 모든 Ceph 모니터의 위치를 설정합니다.

    ceph mon set_location ceph1 datacenter=DC1
    ceph mon set_location ceph2 datacenter=DC1
    ceph mon set_location ceph4 datacenter=DC2
    ceph mon set_location ceph5 datacenter=DC2
    ceph mon set_location ceph7 datacenter=DC3
  5. 각 모니터에 적절한 위치가 있는지 확인합니다.

    $ ceph mon dump

    출력 예:

    epoch 17
    fsid dd77f050-9afe-11ec-a56c-029f8148ea14
    last_changed 2022-03-04T07:17:26.913330+0000
    created 2022-03-03T14:33:22.957190+0000
    min_mon_release 16 (pacific)
    election_strategy: 3
    0: [v2:10.0.143.78:3300/0,v1:10.0.143.78:6789/0] mon.ceph1; crush_location {datacenter=DC1}
    1: [v2:10.0.155.185:3300/0,v1:10.0.155.185:6789/0] mon.ceph4; crush_location {datacenter=DC2}
    2: [v2:10.0.139.88:3300/0,v1:10.0.139.88:6789/0] mon.ceph5; crush_location {datacenter=DC2}
    3: [v2:10.0.150.221:3300/0,v1:10.0.150.221:6789/0] mon.ceph7; crush_location {datacenter=DC3}
    4: [v2:10.0.155.35:3300/0,v1:10.0.155.35:6789/0] mon.ceph2; crush_location {datacenter=DC1}
  6. crushtool 명령을 사용하기 위해 ceph-base RPM 패키지를 설치하여 이 OSD crush 토폴로지를 사용하는 CRUSH 규칙을 생성합니다.

    $ dnf -y install ceph-base

    CRUSH 규칙 세트에 대한 자세한 내용은 Ceph CRUSH 규칙 세트를 참조하십시오.

  7. 클러스터에서 컴파일된 CRUSH 맵을 가져옵니다.

    $ ceph osd getcrushmap > /etc/ceph/crushmap.bin
  8. CRUSH 맵을 컴파일하고 편집할 수 있도록 텍스트 파일로 변환합니다.

    $ crushtool -d /etc/ceph/crushmap.bin -o /etc/ceph/crushmap.txt
  9. 파일 끝에 텍스트 파일 /etc/ceph/crushmap.txt 를 편집하여 CRUSH 맵에 다음 규칙을 추가합니다.

    $ vim /etc/ceph/crushmap.txt
    rule stretch_rule {
            id 1
            type replicated
            min_size 1
            max_size 10
            step take default
            step choose firstn 0 type datacenter
            step chooseleaf firstn 2 type host
            step emit
    }
    # end crush map

    이 예는 OpenShift Container Platform 클러스터의 활성 애플리케이션에 적용됩니다.

    참고

    규칙 ID 고유해야 합니다. 이 예제에서는 id 0이 있는 하나 이상의 crush 규칙만 있으므로 id 1을 사용합니다. 배포에 더 많은 규칙이 생성된 경우 다음 무료 ID를 사용합니다.

    선언된 CRUSH 규칙에는 다음 정보가 포함됩니다.

    • 규칙 이름

      • 설명: 규칙을 식별하는 고유한 전체 이름입니다.
      • 값: stretch_rule
    • id

      • 설명: 규칙을 식별하기 위한 고유한 정수입니다.
      • 값: 1
    • type

      • 설명: 복제된 스토리지 드라이브 또는 삭제 코딩에 대한 규칙을 설명합니다.
      • 값: replicated
    • min_size

      • 설명: 풀이 이 수보다 적은 복제본을 생성하는 경우 CRUSH는 이 규칙을 선택하지 않습니다.
      • 값: 1
    • max_size

      • 설명: 풀이 이 수보다 많은 복제본을 생성하는 경우 CRUSH는 이 규칙을 선택하지 않습니다.
      • 값: 10
    • step take default

      • 설명: default 라는 루트 버킷을 가져와서 트리의 반복을 시작합니다.
    • 단계 선택 firstn 0 유형 데이터 센터

      • 설명: 데이터 센터 버킷을 선택하고 하위 트리로 이동합니다.
    • 단계 chooseleaf firstn 2 유형 host

      • 설명: 지정된 유형의 버킷 수를 선택합니다. 이 경우 이전 수준에서 입력한 데이터 센터에 두 개의 다른 호스트입니다.
    • Step emit

      • 설명: 현재 값을 출력하고 스택을 사용합니다. 일반적으로 규칙 끝에 사용되지만 동일한 규칙에서 다른 트리를 선택하는 데 사용할 수도 있습니다.
  10. /etc/ceph/crushmap.txt 파일에서 새 CRUSH 맵을 컴파일하고 /etc/ceph/crushmap2.bin:이라는 바이너리 파일로 변환합니다.

    $ crushtool -c /etc/ceph/crushmap.txt -o /etc/ceph/crushmap2.bin
  11. 생성한 새 crushmap을 클러스터에 삽입합니다.

    $ ceph osd setcrushmap -i /etc/ceph/crushmap2.bin

    출력 예:

    17
    참고

    숫자 17은 카운터이며 크루쉬 맵에 대한 변경 사항에 따라 증가 (18,19 등)됩니다.

  12. 생성된 확장 규칙을 사용할 수 있는지 확인합니다.

    ceph osd crush rule ls

    출력 예:

    replicated_rule
    stretch_rule
  13. 확장 클러스터 모드를 활성화합니다.

    $ ceph mon enable_stretch_mode ceph7 stretch_rule datacenter

    이 예제에서 ceph7 은 arbiter 노드이고, stretch_rule 은 이전 단계에서 생성한 crush 규칙이며 데이터센터 는 버킷 분할입니다.

  14. 모든 풀이 Ceph 클러스터에서 생성한 stretch_rule CRUSH 규칙을 사용하고 있는지 확인합니다.

    $ for pool in $(rados lspools);do echo -n "Pool: ${pool}; ";ceph osd pool get ${pool} crush_rule;done

    출력 예:

    Pool: device_health_metrics; crush_rule: stretch_rule
    Pool: cephfs.cephfs.meta; crush_rule: stretch_rule
    Pool: cephfs.cephfs.data; crush_rule: stretch_rule
    Pool: .rgw.root; crush_rule: stretch_rule
    Pool: default.rgw.log; crush_rule: stretch_rule
    Pool: default.rgw.control; crush_rule: stretch_rule
    Pool: default.rgw.meta; crush_rule: stretch_rule
    Pool: rbdpool; crush_rule: stretch_rule

    이는 작동 중인 Red Hat Ceph Storage 확장 클러스터가 arbiter 모드를 사용하는 클러스터를 사용할 수 있음을 나타냅니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동