2.13.3. S3 액세스 테스트
S3 액세스를 확인하기 위해 Python 테스트 스크립트를 작성하고 실행해야 합니다. S3 액세스 테스트 스크립트는 radosgw
에 연결하고 새 버킷을 생성하고 모든 버킷을 나열합니다. aws_access_key_id
및 aws_secret_access_key
의 값은 radosgw
key 값에서 가져옵니다.
_admin 명령에서 반환한 access
__key
및 secret
출력에 메타데이터를 유지 관리하기 위한 추가 json 필드가 포함되어 있으므로 시스템 사용자에게는 전체 영역에 대한 root 권한이 있어야 합니다.
사전 요구 사항
-
root
또는sudo
액세스. - Ceph 개체 게이트웨이가 설치되어 있어야 합니다.
- S3 사용자가 생성되었습니다.
절차
Red Hat Enterprise Linux 7용 공통 리포지토리 및 Red Hat Enterprise Linux 8용 High Availability 리포지토리를 활성화합니다.
Red Hat Enterprise Linux 7
# subscription-manager repos --enable=rhel-7-server-rh-common-rpms
Red Hat Enterprise Linux 8
# subscription-manager repos --enable=rhel-8-for-x86_64-highavailability-rpms
python-boto
패키지를 설치합니다.Red Hat Enterprise Linux 7
# yum install python-boto
Red Hat Enterprise Linux 8
# dnf install python3-boto3
Python 스크립트를 생성합니다.
vi s3test.py
파일에 다음 내용을 추가합니다.
Red Hat Enterprise Linux 7
import boto import boto.s3.connection access_key = 'ACCESS' secret_key = 'SECRET' boto.config.add_section('s3') conn = boto.connect_s3( aws_access_key_id = access_key, aws_secret_access_key = secret_key, host = 's3.ZONE.hostname', port = PORT, is_secure=False, calling_format = boto.s3.connection.OrdinaryCallingFormat(), ) bucket = conn.create_bucket('my-new-bucket') for bucket in conn.get_all_buckets(): print "{name}\t{created}".format( name = bucket.name, created = bucket.creation_date, )
Red Hat Enterprise Linux 8
import boto3 endpoint = "" # enter the endpoint URL along with the port "http://URL:_PORT_" access_key = 'ACCESS' secret_key = 'SECRET' s3 = boto3.client( 's3', endpoint_url=endpoint, aws_access_key_id=access_key, aws_secret_access_key=secret_key ) s3.create_bucket(Bucket='my-new-bucket') response = s3.list_buckets() for bucket in response['Buckets']: print("{name}\t{created}".format( name = bucket['Name'], created = bucket['CreationDate'] ))
-
ZONE
을 게이트웨이 서비스를 구성한 호스트의 영역 이름으로 바꿉니다. 즉게이트웨이 호스트입니다
.host'setting이 DNS로 확인되는지 확인합니다. PORT
을 게이트웨이의 포트 번호로 바꿉니다. -
ACCESS
및SECRET
를 Red Hat Ceph Storage 개체 게이트웨이 구성 및 관리 가이드의 S3 사용자 만들기 섹션의access
secret_key 값으로 바꿉니다._key
및
-
스크립트를 실행합니다.
Red Hat Enterprise Linux 7
python s3test.py
Red Hat Enterprise Linux 8
python3 s3test.py
출력 예:
my-new-bucket 2021-08-16T17:09:10.000Z