5.5. Ceph 클라이언트 역할 설치

ceph-ansible 유틸리티는 Ceph 구성 파일 및 관리 인증 키를 노드에 복사하는 ceph-client 역할을 제공합니다. 또한 이 역할을 사용하여 사용자 지정 풀 및 클라이언트를 생성할 수 있습니다.

사전 요구 사항

절차

Ansible 관리 노드에서 다음 작업을 수행합니다.

  1. 새 섹션 [clients]/etc/ansible/hosts 파일에 추가합니다.

    [clients]
    CLIENT_NODE_NAME

    CLIENT_NODE_NAMEceph-client 역할을 설치할 노드의 호스트 이름으로 교체합니다.

  2. /usr/share/ceph-ansible 디렉토리로 이동합니다.

    [root@admin ~]# cd /usr/share/ceph-ansible
  3. clients.yml.sample 파일 이름을 clients.yml 이라는 새 복사본을 생성합니다.

    [root@admin ceph-ansible ~]# cp group_vars/clients.yml.sample group_vars/clients.yml
  4. group_vars/clients.yml 파일을 열고 다음 행의 주석을 제거합니다.

    keys:
      - { name: client.test, caps: { mon: "allow r", osd: "allow class-read object_prefix rbd_children, allow rwx pool=test" },  mode: "{{ ceph_keyring_permissions }}" }
    1. client.test 를 실제 클라이언트 이름으로 바꾸고 클라이언트 정의 줄에 클라이언트 키를 추가합니다. 예를 들면 다음과 같습니다.

      key: "ADD-KEYRING-HERE=="

      이제 전체 줄 예는 다음과 유사합니다.

      - { name: client.test, key: "AQAin8tUMICVFBAALRHNrV0Z4MXupRw4v9JQ6Q==", caps: { mon: "allow r", osd: "allow class-read object_prefix rbd_children, allow rwx pool=test" },  mode: "{{ ceph_keyring_permissions }}" }
      참고

      ceph-authtool --gen-print-key 명령은 새 클라이언트 키를 생성할 수 있습니다.

  5. 필요한 경우 ceph-client 에 풀 및 클라이언트를 생성하도록 지시합니다.

    1. clients.yml 을 업데이트합니다.

      • user_config 설정의 주석을 제거하고 true 로 설정합니다.
      • 섹션의 주석을 제거하고 필요에 따라 업데이트합니다. VDDK 기능을 사용하여 사용자 지정 풀 및 클라이언트 이름을 모두 정의할 수 있습니다.
    2. osd_pool_default_pg_num 설정을 all.yml 파일의 ceph_conf_overrides 섹션에 추가합니다.

      ceph_conf_overrides:
         global:
            osd_pool_default_pg_num: NUMBER

      NUMBER 를 기본 배치 그룹 수로 바꿉니다.

  6. ansible 사용자로 Ansible 플레이북을 실행합니다.

    1. 베어 메탈 배포:

      [ansible@admin ceph-ansible]$ ansible-playbook site.yml --limit clients -i hosts
    2. 컨테이너 배포:

      [ansible@admin ceph-ansible]$ ansible-playbook site-container.yml --limit clients -i hosts

추가 리소스