本文へジャンプします。

ニフクラ ユーザーガイド

専有エンドポイント:専有エンドポイント接続

専有エンドポイントの作成が完了すれば、クライアントから専有エンドポイントへ接続することができます。
接続先サービスが「ニフクラ オブジェクトストレージ」(Amazon S3互換のREST APIを提供)の場合を例にとって接続方法をご紹介いたします。

ここでは、例として下記プライベートIPアドレスの専有エンドポイントを作成したものとします。

専有エンドポイントのプライベートIPアドレス 192.168.12.123

クライアントから専有エンドポイントへの接続は、主に下記の2通りになります。

  • プライベートIPアドレス指定による接続
  • 名前解決による接続(/etc/hostsや内部DNS等)

下記では、それぞれの場合について、S3ツールとしてawscli を利用した際の接続例を紹介します。
なお、awscliにつきましては、サポート範囲外となりますのでご了承ください。

S3ツールの利用例については下記ブログ記事もご覧ください。

※専有エンドポイントへの通信プロトコルはhttpとなります。

※専有エンドポイントはシグネチャーバージョン2のみ対応しているため、awscliでは.aws/config 内に下記のような設定が必要になります。

[default] s3 =     signature_version = s3

プライベートIPアドレス指定による接続例

awscliを利用する場合、--endpoint-url に専有エンドポイントのプライベートIPアドレスを直接指定することで接続が可能です。

下記でバケット一覧やバケット内のファイル一覧を取得することができます。

$ aws --endpoint-url http://192.168.12.123 s3 ls $ aws --endpoint-url http://192.168.12.123 s3 ls s3://mybucket

他の操作もオブジェクトストレージと同様に行うことができます。

名前解決による接続例

専有エンドポイントのプライベートIPアドレスを任意の名前で名前解決を行った際の例です。
下記では、専有エンドポイントを「mydepinstance-internal」という名前で名前解決を行えるようにします。※

S3ツールの仕様や設定によっては、バケットに対してサブドメイン形式で接続するため、各バケット名を付与したサブドメインに対する設定も必要になる場合があります。

※ 名前解決を行う場合、ホスト名に「.」を含むことはできません。これは、専有エンドポイント側が「.」以前をバケット名として取り扱うことによる制約です。

/etc/hosts設定例

/etc/hosts で専有エンドポイントのプライベートIPアドレスを名前解決できるようにします。
例として、/etc/hosts を下記のように設定します

/etc/hosts
192.168.12.123 mydepinstance-internal 192.168.12.123 mybucket.mydepinstance-internal

/etc/hostsの設定後、下記でバケット一覧やバケット内のファイル一覧を取得することができます。

$ aws --endpoint-url http://mydepinstance-internal s3 ls $ aws --endpoint-url http://mydepinstance-internal s3 ls s3://mybucket

他の操作もオブジェクトストレージと同様に行うことができます。

Unbound設定例

Unbound で専有エンドポイントのプライベートIPアドレスを名前解決できるようにします。
例として、Unbound の設定ファイルに下記を追加します。

server: local-zone: "mydepinstance-internal" redirect local-data: "mydepinstance-internal. IN A 192.168.12.123"

設定ファイル変更後、Unbound の設定の変更を反映します。

$ unbound-control reload

Unbound の設定反映後、下記でバケット一覧やバケット内のファイル一覧を取得することができます。

$ aws --endpoint-url http://mydepinstance-internal s3 ls $ aws --endpoint-url http://mydepinstance-internal s3 ls s3://mybucket

他の操作もオブジェクトストレージと同様に行うことができます。

/etc/hostsやUnbound以外の方法でも、名前解決を行える環境であれば、同様に専有エンドポイントの接続を行うことができます。

推奨画面サイズ 1024×768 以上