このガイドでは、AWS PrivateLink を使用して、AWS Virtual Private Cloud (VPC) と SambaCloud 間にセキュアかつプライベートな接続を構築する方法を紹介します。パブリックインターネットにトラフィックを公開せずに、低レイテンシかつ高セキュリティで AI モデルや API にアクセスしたいエンタープライズユーザー向けに設計されています。 PrivateLink を使うことで、データは常に AWS ネットワーク内にとどまり、パブリックインターネットには一切出ません。アカウントやアベイラビリティゾーン (AZ) をまたいだサービス接続、オンプレミス環境との連携も可能です。
SambaCloud はus-west-1 (北カリフォルニア) リージョンで PrivateLink をサポートしており、エンタープライズレベルのAI推論におけるパフォーマンスとセキュリティを大幅に向上させます。
SambaNova のすべてのAPI エンドポイントおよび機能は、PrivateLink 経由でも利用可能です。既存の API トークン および標準的な Cloud API 認証方式をそのままご利用いただけます。
対応リージョンの一覧は こちら をご確認ください。

主なメリット

AWS PrivateLink を経由して接続することで、以下の利点が得られます。
  • セキュア接続:データはAmazonネットワーク内に留まり、パブリックインターネットへの露出を排除します。
  • 攻撃対象領域の最小化:外部アクセス経路を制限し、セキュリティリスクを大幅に低減します。
  • 低レイテンシ通信:トラフィックが同一AWSリージョン内で完結するため、高速な通信が可能となります。
  • コンプライアンス対応:厳格なセキュリティポリシーや監査要件に対応します。
  • エンタープライズ環境との互換性:既存の企業ネットワーク、認証、アクセス管理フレームワークと容易に統合できます。

接続の仕組み

AWS PrivateLink を利用して SambaCloud に接続する際には、接続の挙動やセキュリティ対策について把握しておくべき重要なポイントがいくつかあります。本セクションでは、期待される動作や、安全なセットアップ方法について簡潔に説明します。

セキュリティおよび接続の動作

  • HTTPS通信が必須:すべてのAPIトラフィックは暗号化を保証するためにHTTPSを使用する必要があります。
  • 証明書の設定:独自ドメイン (例: example.com) で接続する場合は、対応するTLS証明書の設定が必要です。
  • トラフィックは完全にプライベート:データは AWS バックボーン上に留まり、パブリックインターネットに露出することはありません。
  • 標準認証方式:SambaNovaのAPIトークンおよび認証フローがそのまま利用できます。
  • エンドポイントポリシー (任意):AWS VPCエンドポイントポリシーを利用してアクセスを制御します。
  • 監視対応:AWS CloudWatchでエンドポイントの稼働状況や使用状況を追跡します。
  • 高可用性設計:SambaNovaのサービスはus-west-1の複数AZにまたがって展開されています。
  • 追加のレート制限なし:標準のAPIレート制限のみが適用されます。

PrivateLinkのセットアップ

前提条件

設定を開始する前に、以下の準備が整っていることを確認してください。
  • 有効なAWSアカウント
  • AWS CLIのインストール済み環境
  • us-west-1リージョン内に存在するVPC
  • SambaNova の PrivateLink サービスへのアクセス権
  • SambaNova により許可リスト (allowlist) に追加された AWS アカウント ID

ステップ1:アクセスリクエストの送信

PrivateLink エンドポイントを作成する前に、まず SambaNova にアクセス申請を行う必要があります。以下の情報を添えて、SambaNova の担当者にご連絡ください。
  • エンドポイントを作成する予定のAWSアカウントID
  • 利用目的やアクセスニーズの簡単な説明
  • 想定される使用パターンやデータ量
  • 接続を希望するAWSリージョン

ステップ2:Sambanova側の対応

SambaNova では、リクエストを受領後、以下の対応を行います。
  1. 申請内容を確認します。
  2. 対象のAWSアカウントIDを許可対象リスト (allowed principals) に追加します。
  3. エンドポイント接続が確認でき次第、承認処理を実施します。
  4. セットアップ完了の準備が整った時点で、申請者に通知します。
承認完了後、AWSアカウント内でVPCエンドポイントの作成が可能になります。

ステップ3:VPCエンドポイントの作成

承認が下りた後、以下の作業を実施してください。
  • AWS アカウント内で PrivateLink エンドポイントを作成してください。
  • SambaNova 側で接続を受け入れます (通常、1営業日以内)。
  • 接続が完了すれば、利用開始の準備が整います。

VPCエンドポイントの作成と設定

以下の手順に従って VPC エンドポイントを作成し、**AWS PrivateLink **を通じて SambaCloud に接続してください。
  • セットアップ手順のビデオ

1. VPCのセットアップ

まだus-west-1にVPCが存在しない場合は、以下のコマンドで新しく作成します。
# Create a new VPC
aws ec2 create-vpc \
  --cidr-block 10.0.0.0/16 \
  --tag-specifications 'ResourceType=vpc,Tags=[{Key=Name,Value=sambanova-vpc}]' \
  --region us-west-1
続いて、PrivateLink に必要な DNS サポートを有効化します。
# Enable DNS hostname resolution
aws ec2 modify-vpc-attribute \
  --vpc-id <vpc-id> \
  --enable-dns-hostnames \
  --region us-west-1

# Enable DNS support
aws ec2 modify-vpc-attribute \
  --vpc-id <vpc-id> \
  --enable-dns-support \
  --region us-west-1

2. サブネットの作成

高可用性を確保するために、2つのアベイラビリティゾーンにサブネットを作成します。
# Subnet in us-west-1a
aws ec2 create-subnet \
  --vpc-id <vpc-id> \
  --cidr-block 10.0.1.0/24 \
  --availability-zone us-west-1a \
  --tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=sambanova-subnet-1a}]' \
  --region us-west-1

# Subnet in us-west-1c
aws ec2 create-subnet \
  --vpc-id <vpc-id> \
  --cidr-block 10.0.2.0/24 \
  --availability-zone us-west-1c \
  --tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=sambanova-subnet-1c}]' \
  --region us-west-1

3. セキュリティグループの設定

エンドポイントとのセキュアな通信を許可するセキュリティグループを作成します。
# Create a new security group
aws ec2 create-security-group \
  --group-name sambanova-endpoint-sg \
  --description "Security group for SambaNova PrivateLink endpoint" \
  --vpc-id <vpc-id> \
  --region us-west-1

# Allow HTTPS traffic from your VPC CIDR
aws ec2 authorize-security-group-ingress \
  --group-id <security-group-id> \
  --protocol tcp \
  --port 443 \
  --cidr <vpc-cidr> \
  --region us-west-1
このセキュリティグループで、VPC の CIDR ブロックからのポート 443 へのインバウンド通信が許可されていることを確認してください。PrivateLink では HTTPS 通信が必須です。

4. VPCエンドポイントの作成

次に、VPC を SambaNova の PrivateLink サービスに接続します。
aws ec2 create-vpc-endpoint \
  --vpc-id <vpc-id> \
  --service-name com.amazonaws.vpce.us-west-1.vpce-svc-0bfec72bfb8a753a1 \
  --vpc-endpoint-type Interface \
  --subnet-ids <subnet-1a-id> <subnet-1c-id> \
  --security-group-ids <security-group-id> \
  --region us-west-1
これは一般的な API アクセス向けのデフォルトエンドポイントです。特定モデル専用のエンドポイント (例: Mixtral 8x22B) が必要な場合は、SambaNova サポートにお問い合わせください。

5. カスタムDNSの設定

エンドポイントへのアクセスをスムーズに行うために、Route 53 を使用してカスタムドメインを設定します。

プライベートホストゾーンを作成

# Replace 'yourdomain.com' with your domain
aws route53 create-hosted-zone \
  --name yourdomain.com \
  --hosted-zone-config Comment='Private Hosted Zone',PrivateZone=true \
  --vpc VPCRegion=us-west-1,VPCId=<your-vpc-id> \
  --caller-reference $(date +%s)

エンドポイントのプライベートIPを取得

# Replace with your actual endpoint ID
NETWORK_IDS=$(aws ec2 describe-vpc-endpoints \
  --vpc-endpoint-ids <your-endpoint-id> \
  --query 'VpcEndpoints[0].NetworkInterfaceIds' \
  --output text \
  --region us-west-1)

ENDPOINT_IPS=$(aws ec2 describe-network-interfaces \
  --network-interface-ids $NETWORK_IDS \
  --query 'NetworkInterfaces[*].PrivateIpAddress' \
  --output text \
  --region us-west-1)

カスタムドメインのレコードを作成

aws route53 change-resource-record-sets \
  --hosted-zone-id <your-hosted-zone-id> \
  --change-batch '{
    "Changes": [{
      "Action": "CREATE",
      "ResourceRecordSet": {
        "Name": "api.sambanova.yourdomain.com",
        "Type": "A",
        "TTL": 300,
        "ResourceRecords": [{"Value": "'$ENDPOINT_IPS'"}]
      }
    }]
  }'

DNS設定のポイント

  • カスタムドメインはドメインはエンドポイントのプライベートIPに解決されます。
  • DNS は VPC 内でのみ機能します。
  • 以下のようなURLでAPI呼び出しが可能になります。
    https://api.sambanova.yourcompany.com
  • TTL (Time to Live) を5分に設定することで、IP変更時の柔軟性を確保できます

ドメインの例

  • https://api.sambanova.yourcompany.com
  • https://sambanova-api.internal.yourcompany.com
  • https://ml-api.yourcompany.local

6. 接続テスト

すべての設定が完了したら、以下の手順で PrivateLink 接続の動作確認を行います。

エンドポイントの DNS 名を取得

VPC エンドポイントに割り当てられた DNS 名を確認するには、以下のコマンドを使用します。
aws ec2 describe-vpc-endpoints \
  --vpc-endpoint-ids <endpoint-id> \
  --region us-west-1

プライベート DNS 解決の確認

以下のコマンドにより、VPC 内からプライベート DNS が正しく解決されることを確認してください。
nslookup api.sambanova.custom.com

テストリクエストを送信する

カスタムドメインとトークンを使用して、実際の API リクエストをテストしてください。
curl -k \
  -H "Host: api.sambanova.ai" \
  -H "Authorization: Bearer <your-api-token>" \
  -H "Content-Type: application/json" \
  -d '{
        "stream": true,
        "model": "Meta-Llama-3.1-8B-Instruct",
        "messages": [
          { "role": "system", "content": "You are a helpful assistant" },
          { "role": "user", "content": "Hello" }
        ]
      }' \
  -X POST https://api.sambanova.custom.com/v1/chat/completions
-k オプションは SSL 証明書の検証をスキップします (社内テスト用には有用です)。本番環境で使用する際は十分に注意してください。

正常なレスポンス例

接続が正常に完了していれば、LLM モデルからのレスポンスストリームが返されます。これにより、以下の項目がすべて正常に機能していることが確認できます。
  • DNSが正しく解決されている
  • VPCエンドポイントに到達できている
  • APIトークンが有効である
  • SambaNova の LLM がリクエストを処理できる状態にある

エンドポイント設定

SambaCloud との PrivateLink 接続を構成する際は、以下の情報を使用してください。
カテゴリ詳細
プライマリリージョンus-west-1
アベイラビリティゾーンus-west-1aus-west-1b
サービスポートPort 443 (HTTPS only)
※ HTTPリクエストは自動的にリダイレクトされます
ネットワークロードバランサーacp-production-sc3-1-ingress-1
VPCエンドポイントサービス名com.amazonaws.vpce.us-west-1.vpce-svc-0bfec72bfb8a753a1
SambaNova VPC IDvpc-0b7900a153c27435c
その他の対応リージョンご利用可能かどうかは SambaNova サポートまでお問い合わせください。

サービスの制限とクォータ

コスト概要

  • AWS PrivateLink の料金体系 が適用され、その請求はAWSによって行われます。
  • SambaNova は PrivateLink の有効化や利用に対して追加料金を請求しません。
  • API の標準利用料金は、現在のご契約プランに基づき従来通り適用されます。

トラブルシューティングガイド

セットアップ中またはテスト中に問題が発生した場合は、以下のカテゴリ別のチェック項目を参照してください。

接続に関する問題

  • サブネットがus-west-1aまたはus-west-1cに存在していることを確認してください。
  • VPCエンドポイントのステータスが Available (利用可能) になっていることを確認してください。
  • api.sambanova.custom.com の DNS 解決が正しく行われているか確認してください。
  • セキュリティグループで、VPC の CIDR ブロックからの HTTPS (ポート 443) 通信が許可されていることを確認してください。
  • 対象のエンドポイントサービスに対し、AWS アカウントが許可されたプリンシパル (allowed principals) としてリストされていることを確認してください。

DNS解決に関する問題

  • VPC の DNS 設定で、DNS ホスト名およびDNS 解決のサポートが両方有効になっている必要があります。
  • このエンドポイントサービスでは Private DNS を有効にすることはできません (これは仕様上の制限です)。
  • Route 53 のプライベートホストゾーンが、正しい VPC に関連付けられていることを確認してください。
  • カスタムドメインがエンドポイントの IP アドレスに対応する A レコード を持っていることを確認してください。
  • VPC 内のインスタンスから以下のコマンドで DNS チェックを実行してください。
    nslookup api.sambanova.custom.com
    dig api.sambanova.custom.com
    
  • ドキュメントに記載されている正確なカスタムドメイン名を使用してください。

HTTPS接続に関する問題

  • 常に**HTTPS (ポート443) **経由で接続してください。
  • 自己署名証明書を許可するには、curl コマンドに -k フラグを付けて実行します。
curl -k ...
  • 以下の必須ヘッダーをすべて含めてリクエストを送信してください。
    • Host: api.sambanova.ai
    • Authorization: Bearer <your-api-token>
    • Content-Type: application/json

検証用コマンド

以下のコマンドを使用して、エンドポイント設定および DNS 設定が正しく構成されているかを検証してください。

1. エンドポイントのステータスとプライベート DNS 設定を確認

aws ec2 describe-vpc-endpoints \
  --vpc-endpoint-ids <endpoint-id> \
  --region us-west-1

2. カスタムドメインの DNS 解決をテスト

nslookup api.sambanova.custom.com

3. HTTPS 接続を確認

telnet api.sambanova.custom.com 443

4. Route 53 設定を確認

aws route53 list-hosted-zones
aws route53 get-hosted-zone --id <hosted-zone-id>
aws route53 list-resource-record-sets --hosted-zone-id <hosted-zone-id>

5. エンドポイントのネットワークインターフェースとプライベートIPを取得

aws ec2 describe-network-interfaces \
  --filters Name=vpc-endpoint-id,Values=<endpoint-id> \
  --query 'NetworkInterfaces[*].PrivateIpAddress' \
  --region us-west-1

次のステップ

AWS PrivateLink を介して SambaCloud への接続が完了した後は、以下の対応を行ってください。
  • プライベートまたはカスタム DNS 名を使用して API リクエストを開始します。
  • AWS CloudWatch を使用して、エンドポイントのパフォーマンスと可用性を監視します。
  • このセットアップ手順を他のチームやユースケース向けに貴組織内で共有しましょう。
  • 追加のモデル、カスタムエンドポイント、より高いスループットが必要な場合は、help@sambanova.ai までご連絡ください。

まとめ

これらの推奨事項に従うことで、高可用性を確保し、厳格なセキュリティ制御を維持しつつ、VPCエンドポイントのDNS設定とパフォーマンスを最適化することができます。
  • すべてのリソースは us-west-1 リージョンに作成してください。
  • 高可用性を実現するため、us-west-1aus-west-1c の両方のアベイラビリティゾーンを使用してください。
  • 必要な通信のみを許可するよう、セキュリティグループのルールは可能な限り制限的に設定してください。
  • VPC エンドポイントの DNS 名は一意で、自動的に生成されます。
  • プライベート DNS 解決は、VPC 内からのみ利用可能です。
  • より簡単なアクセスと管理のため、VPC 内でカスタムドメイン名を割り当てることができます。
  • DNS の変更が反映されるまでには最大 5 分かかる場合があります (TTL = 300)。
  • VPC エンドポイントの正常性とパフォーマンスを定期的に監視してください。