Red Hat Training

A Red Hat training course is available for Red Hat Ceph Storage

2.10.3. S3 アクセスのテスト

S3 アクセスを検証するには、Python テストスクリプトを作成し、実行する必要があります。S3 アクセステストスクリプトは radosgw に接続し、新規バケットを作成し、すべてのバケットを一覧表示します。aws_access_key_id および aws_secret_access_key の値は、radosgw_admin コマンドで返される access_key および secret_key の値から取得されます。

次の手順を実行します。

  1. 共通リポジトリーを有効にします。

    # subscription-manager repos --enable=rhel-7-server-rh-common-rpms
  2. python-boto パッケージをインストールします。

    sudo yum install python-boto
  3. Python スクリプトを作成します。

    vi s3test.py
  4. ファイルに以下のコンテンツを追加します。

    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,
    )
    1. <zone> は、ゲートウェイサービスを設定したホストのゾーン名に置き換えます。つまり、gateway host です。host の設定が DNS で解決されていることを確認します。<port> は、ゲートウェイのポート番号に置き換えます。
    2. $access$secret を、S3 ユーザーの作成 セクションの access_keysecret_key の値に置き換えます。
  5. スクリプトを実行します。

    python s3test.py

    出力は以下のようになります。

    my-new-bucket 2015-02-16T17:09:10.000Z