1.4. 컨테이너에 Ceph Object Gateway 설치
ceph-ansible 플레이북과 함께 Ansible 애플리케이션을 사용하여 컨테이너에 Ceph Object Gateway를 설치합니다.
사전 요구 사항
- 작동 중인 Red Hat Ceph Storage 클러스터.
절차
별도로 지정하지 않는 한 Ansible 관리 노드에서 다음 명령을 실행합니다.
root사용자로/usr/share/ceph-ansible/디렉터리로 이동합니다.cd /usr/share/ceph-ansible/
[root@admin ~]# cd /usr/share/ceph-ansible/Copy to Clipboard Copied! Toggle word wrap Toggle overflow group_vars/all.yml파일의radosgw_interface매개변수의 주석을 제거합니다.radosgw_interface: interface
radosgw_interface: interfaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow Ceph Object Gateway 노드가 수신 대기하는 인터페이스로 인터페이스를 바꿉니다.
선택 사항: 기본 변수를 변경합니다.
group_vars디렉터리에 있는rgws.yml.sample파일의 새 사본을 생성합니다.cp group_vars/rgws.yml.sample group_vars/rgws.yml
[root@admin ceph-ansible]# cp group_vars/rgws.yml.sample group_vars/rgws.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
group_vars/rgws.yml파일을 편집합니다. 자세한 내용은rgws.yml파일을 참조하십시오.
기본적으로
/etc/ansible/hosts에 있는 Ansible 인벤토리 파일의[rgws]섹션에 Ceph Object Gateway 노드의 호스트 이름을 추가합니다.[rgws] gateway01
[rgws] gateway01Copy to Clipboard Copied! Toggle word wrap Toggle overflow 또는
[osds]및[rgws]섹션에 동일한 노드를 추가하여 하나의 노드에서 OSD 데몬과 Ceph Object Gateway를 배치할 수 있습니다. 자세한 내용은 컨테이너화된 Ceph 데몬 공동 배치를 참조하십시오.Ansible 사용자로
ceph-ansible플레이북을 실행합니다.ansible-playbook site-docker.yml --limit rgws
[user@admin ceph-ansible]$ ansible-playbook site-docker.yml --limit rgwsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고Red Hat Ceph Storage를 Red Hat Enterprise Linux Atomic Host 호스트에 배포하는 경우
--skip-tags=with_pkg옵션을 사용합니다.ansible-playbook site-docker.yml --skip-tags=with_pkg
[user@admin ceph-ansible]$ ansible-playbook site-docker.yml --skip-tags=with_pkgCopy to Clipboard Copied! Toggle word wrap Toggle overflow Ceph Object Gateway 노드가 성공적으로 배포되었는지 확인합니다.
root사용자로 모니터 노드에 연결합니다.ssh hostname
ssh hostnameCopy to Clipboard Copied! Toggle word wrap Toggle overflow hostname 을 Monitor 노드의 호스트 이름으로 교체합니다. 예를 들면 다음과 같습니다.
ssh root@monitor
[user@admin ~]$ ssh root@monitorCopy to Clipboard Copied! Toggle word wrap Toggle overflow Ceph Object Gateway 풀이 올바르게 생성되었는지 확인합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Ceph 클러스터와 동일한 네트워크의 모든 클라이언트에서(예: Monitor 노드)에서 Ceph Object Gateway 호스트의 IP 주소를 사용하여 포트 8080에 HTTP 요청을 보냅니다.
curl http://IP-address:8080
curl http://IP-address:8080Copy to Clipboard Copied! Toggle word wrap Toggle overflow IP-address 를 Ceph Object Gateway 노드의 IP 주소로 바꿉니다. Ceph Object Gateway 호스트의 IP 주소를 확인하려면
ifconfig또는ip명령을 사용합니다.curl http://192.168.122.199:8080
[root@client ~]# curl http://192.168.122.199:8080 <?xml version="1.0" encoding="UTF-8"?><ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Owner><ID>anonymous</ID><DisplayName></DisplayName></Owner><Buckets></Buckets></ListAllMyBucketsResult>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 버킷 나열:
docker exec ceph-mon-mon1 radosgw-admin bucket list
[root@monitor ~]# docker exec ceph-mon-mon1 radosgw-admin bucket listCopy to Clipboard Copied! Toggle word wrap Toggle overflow