第8章 RADOS Object Gateway S3 エンドポイントへのアクセス
ユーザーは、RADOS Object Gateway (RGW) エンドポイントに直接アクセスできます。
前提条件
- 実行中の OpenShift Container Storage Platform
手順
oc get service
コマンドを実行して RGW サービス名を取得します。$ oc get service NAME TYPE rook-ceph-rgw-ocs-storagecluster-cephobjectstore ClusterIP CLUSTER-IP EXTERNAL-IP PORT(S) AGE 172.30.99.207 <none> 80/TCP 4d15h
oc expose
コマンドを実行して RGW サービスを公開します。$ oc expose svc/<RGW service name> --hostname=<route name>
<RGW-service name>
を直前の手順の RGW サービス名に置き換えます。<route name>
を RGW サービス用に作成するルートに置き換えます。以下に例を示します。
$ oc expose svc/rook-ceph-rgw-ocs-storagecluster-cephobjectstore --hostname=rook-ceph-rgw-ocs.ocp.host.example.com
oc get route
コマンドを実行してoc expose
が成功し、RGW ルートがあることを確認します。$ oc get route NAME HOST/PORT PATH rook-ceph-rgw-ocs-storagecluster-cephobjectstore rook-ceph-rgw-ocsocp.host.example.com SERVICES PORT TERMINATION WILDCARD rook-ceph-rgw-ocs-storagecluster-cephobjectstore http <none>
検証
ENDPOINT
を確認するには、以下のコマンドを実行します。aws s3 --no-verify-ssl --endpoint <ENDPOINT> ls
<ENDPOINT>
を、上記の手順 3 のコマンドから取得したルートに置き換えます。以下に例を示します。
$ aws s3 --no-verify-ssl --endpoint http://rook-ceph-rgw-ocs.ocp.host.example.com ls
注記
デフォルトユーザー ocs-storagecluster-cephobjectstoreuser
のアクセスキーおよびシークレットを取得するには、以下のコマンドを実行します。
アクセスキー:
$ oc get secret rook-ceph-object-user-ocs-storagecluster-cephobjectstore-ocs-storagecluster-cephobjectstoreuser -o yaml | grep -w "AccessKey:" | head -n1 | awk '{print $2}' | base64 --decode
シークレットキー:
$ oc get secret rook-ceph-object-user-ocs-storagecluster-cephobjectstore-ocs-storagecluster-cephobjectstoreuser -o yaml | grep -w "SecretKey:" | head -n1 | awk '{print $2}' | base64 --decode