4.3. Cockpit Ceph 설치 및 구성

Cockpit Ceph 설치 프로그램을 사용하여 Red Hat Ceph Storage 클러스터를 설치하려면 먼저 Ansible 관리 노드에 Cockpit Ceph 설치 프로그램을 설치해야 합니다.

사전 요구 사항

  • Ansible 관리 노드에 대한 루트 수준 액세스.
  • Ansible 애플리케이션과 함께 사용할 ansible 사용자 계정입니다.

절차

  1. Cockpit이 설치되었는지 확인합니다.

    $ rpm -q cockpit

    예제:

    [admin@jb-ceph4-admin ~]$ rpm -q cockpit
    cockpit-196.3-1.el8.x86_64

    위의 예제와 유사한 출력이 표시되면 Cockpit 확인 단계로 건너뜁니다. 출력이 package cockpit이 설치되지 않은 경우 Cockpit 설치 단계를 계속합니다.

  2. 선택 사항: Cockpit을 설치합니다.

    1. Red Hat Enterprise Linux 8의 경우:

      # dnf install cockpit
    2. Red Hat Enterprise Linux 7의 경우:

      # yum install cockpit
  3. Cockpit이 실행 중인지 확인합니다.

    # systemctl status cockpit.socket

    출력에 Active: active(가져오기) 가 표시되면 Red Hat Ceph Storage용 Cockpit 플러그인 설치 단계로 건너뜁니다. Active: inactive(dead) 가 표시되는 경우 Cockpit 활성화 단계를 계속 진행합니다.

  4. 선택 사항: Cockpit을 활성화합니다.

    1. systemctl 명령을 사용하여 Cockpit을 활성화합니다.

      # systemctl enable --now cockpit.socket

      다음과 같은 행이 표시됩니다.

      Created symlink /etc/systemd/system/sockets.target.wants/cockpit.socket → /usr/lib/systemd/system/cockpit.socket.
    2. Cockpit이 실행 중인지 확인합니다.

      # systemctl status cockpit.socket

      다음과 같은 행이 표시됩니다.

      Active: active (listening) since Tue 2020-01-07 18:49:07 EST; 7min ago
  5. Red Hat Ceph Storage용 Cockpit Ceph Installer를 설치합니다.

    1. Red Hat Enterprise Linux 8의 경우:

      # dnf install cockpit-ceph-installer
    2. Red Hat Enterprise Linux 7의 경우:

      # yum install cockpit-ceph-installer
  6. Ansible 사용자로 sudo를 사용하여 컨테이너 카탈로그에 로그인합니다.

    참고

    기본적으로 Cockpit Ceph 설치 프로그램은 root 사용자를 사용하여 Ceph를 설치합니다. 사전 요구 사항의 일부로 생성된 Ansible 사용자를 사용하여 Ceph를 설치하려면 Ansible 사용자로 sudo 를 사용하여 이 절차의 나머지 명령을 실행합니다.

    Red Hat Enterprise Linux 7

    $ sudo docker login -u CUSTOMER_PORTAL_USERNAME https://registry.redhat.io

    예제

    [admin@jb-ceph4-admin ~]$ sudo docker login -u myusername https://registry.redhat.io
    Password:
    Login Succeeded!

    Red Hat Enterprise Linux 8

    $ sudo podman login -u CUSTOMER_PORTAL_USERNAME https://registry.redhat.io

    예제

    [admin@jb-ceph4-admin ~]$ sudo podman login -u myusername https://registry.redhat.io
    Password:
    Login Succeeded!

  7. registry.redhat.io가 컨테이너 레지스트리 검색 경로에 있는지 확인합니다.

    1. /etc/containers/registries.conf 파일을 편집하려면 엽니다.

      [registries.search]
      registries = [ 'registry.access.redhat.com', 'registry.fedoraproject.org', 'registry.centos.org', 'docker.io']

      registry.redhat.io가 파일에 포함되어 있지 않은 경우 추가합니다.

      [registries.search]
      registries = ['registry.redhat.io', 'registry.access.redhat.com', 'registry.fedoraproject.org', 'registry.centos.org', 'docker.io']
  8. Ansible 사용자로 sudo를 사용하여 ansible-runner-service 를 시작합니다.

    $ sudo ansible-runner-service.sh -s

    예제

    [admin@jb-ceph4-admin ~]$ sudo ansible-runner-service.sh -s
    Checking environment is ready
    Checking/creating directories
    Checking SSL certificate configuration
    Generating RSA private key, 4096 bit long modulus (2 primes)
    ..................................................................................................................................................................................................................................++++
    ......................................................++++
    e is 65537 (0x010001)
    Generating RSA private key, 4096 bit long modulus (2 primes)
    ........................................++++
    ..............................................................................................................................................................................++++
    e is 65537 (0x010001)
    writing RSA key
    Signature ok
    subject=C = US, ST = North Carolina, L = Raleigh, O = Red Hat, OU = RunnerServer, CN = jb-ceph4-admin
    Getting CA Private Key
    Generating RSA private key, 4096 bit long modulus (2 primes)
    .....................................................................................................++++
    ..++++
    e is 65537 (0x010001)
    writing RSA key
    Signature ok
    subject=C = US, ST = North Carolina, L = Raleigh, O = Red Hat, OU = RunnerClient, CN = jb-ceph4-admin
    Getting CA Private Key
    Setting ownership of the certs to your user account(admin)
    Setting target user for ansible connections to admin
    Applying SELINUX container_file_t context to '/etc/ansible-runner-service'
    Applying SELINUX container_file_t context to '/usr/share/ceph-ansible'
    Ansible API (runner-service) container set to rhceph/ansible-runner-rhel8:latest
    Fetching Ansible API container (runner-service). Please wait...
    Trying to pull registry.redhat.io/rhceph/ansible-runner-rhel8:latest...Getting image source signatures
    Copying blob c585fd5093c6 done
    Copying blob 217d30c36265 done
    Copying blob e61d8721e62e done
    Copying config b96067ea93 done
    Writing manifest to image destination
    Storing signatures
    b96067ea93c8d6769eaea86854617c63c61ea10c4ff01ecf71d488d5727cb577
    Starting Ansible API container (runner-service)
    Started runner-service container
    Waiting for Ansible API container (runner-service) to respond
    The Ansible API container (runner-service) is available and responding to requests
    
    Login to the cockpit UI at https://jb-ceph4-admin:9090/cockpit-ceph-installer to start the install

    출력의 마지막 행에는 Cockpit Ceph 설치 프로그램에 대한 URL이 포함됩니다. 위의 예에서 URL은 https://jb-ceph4-admin:9090/cockpit-ceph-installer 입니다. 사용자 환경에 인쇄된 URL을 기록해 두십시오.