4.3. Cephx 활성화

cephx 가 활성화되면 Ceph는 /etc/ceph/$cluster.$name.keyring 이 포함된 기본 검색 경로에서 인증 키를 찾습니다. Ceph 구성 파일의 [global] 섹션에 인증 키 옵션을 추가하여 이 위치를 재정의할 수 있지만 권장되지는 않습니다.

인증이 비활성화된 클러스터에서 cephx 를 활성화하려면 다음 절차를 실행합니다. 귀하 또는 배포 유틸리티에서 키를 이미 생성한 경우, 키 생성과 관련된 단계를 건너뛸 수 있습니다.

사전 요구 사항

  • 실행 중인 Red Hat Ceph Storage 클러스터.
  • Ceph 모니터 노드에 대한 루트 수준 액세스.

절차

  1. client.admin 키를 생성하고 클라이언트 호스트에 대한 키 사본을 저장합니다.

    [root@mon ~]# ceph auth get-or-create client.admin mon 'allow *' osd 'allow *' -o /etc/ceph/ceph.client.admin.keyring
    주의

    이렇게 하면 기존 /etc/ceph/client.admin.keyring 파일의 내용이 지워집니다. 배포 툴이 이미 수행된 경우 이 단계를 수행하지 마십시오.

  2. 모니터 클러스터에 대한 인증 키를 생성하고 모니터 시크릿 키를 생성합니다.

    [root@mon ~]# ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'
  3. 모니터 인증 키를 모니터 mon 데이터 디렉터리의 ceph.mon.keyring 파일에 복사합니다. 예를 들어 클러스터 cephmon.a 에 복사하려면 다음을 사용합니다.

    [root@mon ~]# cp /tmp/ceph.mon.keyring /var/lib/ceph/mon/ceph-a/keyring
  4. 모든 OSD에 대한 비밀 키를 생성합니다. 여기서 ID 는 OSD 번호입니다.

    ceph auth get-or-create osd.ID mon 'allow rwx' osd 'allow *' -o /var/lib/ceph/osd/ceph-ID/keyring
  5. 기본적으로 cephx 인증 프로토콜은 활성화됩니다.

    참고

    이전에 인증 옵션을 none 으로 설정하여 cephx 인증 프로토콜이 비활성화된 경우 Ceph 구성 파일(/etc/ceph/ceph.conf)의 [global] 섹션에서 다음 행을 제거하면 cephx 인증 프로토콜을 다시 활성화합니다.

    auth_cluster_required = none
    auth_service_required = none
    auth_client_required = none
  6. Ceph 스토리지 클러스터를 시작하거나 다시 시작합니다.

    중요

    cephx 를 활성화하려면 클러스터를 완전히 다시 시작해야 하거나 클라이언트 I/O가 비활성화된 동안 해당 클러스터를 종료한 다음 시작해야 하므로 다운타임이 필요합니다.

    스토리지 클러스터를 재시작하거나 종료하기 전에 이러한 플래그를 설정해야 합니다.

    [root@mon ~]# ceph osd set noout
    [root@mon ~]# ceph osd set norecover
    [root@mon ~]# ceph osd set norebalance
    [root@mon ~]# ceph osd set nobackfill
    [root@mon ~]# ceph osd set nodown
    [root@mon ~]# ceph osd set pause

    cephx 가 활성화되고 모든 PG가 활성 상태이고 정리되면 플래그를 설정 해제합니다.

    [root@mon ~]# ceph osd unset noout
    [root@mon ~]# ceph osd unset norecover
    [root@mon ~]# ceph osd unset norebalance
    [root@mon ~]# ceph osd unset nobackfill
    [root@mon ~]# ceph osd unset nodown
    [root@mon ~]# ceph osd unset pause