8.4. S3 アクセスのテスト
S3 アクセスを検証するには、Python テストスクリプトを作成し、実行する必要があります。S3 アクセステストスクリプトは radosgw に接続し、新規バケットを作成し、すべてのバケットをリスト表示します。aws_access_key_id および aws_secret_access_key の値は、radosgw_admin コマンドで返される access_key および secret_key の値から取得されます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- ノードへの root レベルのアクセス。
手順
Red Hat Enterprise Linux 8 の High Availability リポジトリーを有効にします。
subscription-manager repos --enable=rhel-8-for-x86_64-highavailability-rpmspython3-boto3パッケージをインストールします。dnf install python3-boto3Python スクリプトを作成します。
vi s3test.pyファイルに以下のコンテンツを追加します。
構文
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'] ))-
endpointは、ゲートウェイサービスを設定したホストの URL に置き換えます。つまり、gateway hostです。hostの設定が DNS で解決されていることを確認します。PORTは、ゲートウェイのポート番号に置き換えます。 -
ACCESSおよびSECRETは、Red Hat Ceph Storage Object Gateway Guide の Create an S3 User セクションに記載されているaccess_keyおよびsecret_keyの値に置き換えます。
-
スクリプトを実行します。
python3 s3test.py出力は以下のようになります。
my-new-bucket 2022-05-31T17:09:10.000Z