このページでは、Google Distributed Cloud 接続ハードウェアを注文する方法について説明します。Distributed Cloud Connected は、次の国でご利用いただけます。
- オーストラリア
- オーストリア
- ベルギー
- ブラジル
- カナダ
- デンマーク
- フィンランド
- フランス
- ドイツ
- 香港
- 日本
- インド
- インドネシア
- イタリア
- オランダ
- ノルウェー
- ポーランド
- サウジアラビア
- シンガポール
- 韓国
- スペイン
- スウェーデン
- スイス
- 英国
- 米国
ハードウェアを注文する前に、Distributed Cloud 接続のインストール要件を満たす必要があります。
Distributed Cloud コネクテッドの調達モデル
ビジネス要件に基づいて、次のいずれかの方法で Distributed Cloud コネクテッド ハードウェアを注文できます。
Google 所有のハードウェア。Distributed Cloud コネクテッド ハードウェアは、Google から直接注文できます。このシナリオでは、Google が Distributed Cloud 接続ハードウェアの調達、メンテナンス、修理、廃止を行います。契約が終了すると、Google は Distributed Cloud ハードウェアを回収し、保存されているすべてのデータを破棄します。
お客様が調達したハードウェア。ビジネス要件に合ったデプロイ構成について Google と協議した後、Google 認定のシステム インテグレータ(SI)に Distributed Cloud Connected を注文できます。このシナリオでは、Distributed Cloud 接続ハードウェアを所有しています。SI は、お客様と Google と連携して、ハードウェアのデプロイ、修理、廃止を行います。契約が終了すると、SI は Distributed Cloud に接続されたハードウェアからすべての Google ソフトウェアとデータを消去します。その後、ハードウェアを再利用または廃棄できます。このタイプの調達は、Distributed Cloud 接続サーバーでのみ使用できます。
前提条件
注文を確定する前に、以下の情報を用意する必要があります。
注文の連絡先。組織での Distributed Cloud コネクテッド ハードウェアのデプロイの管理を担当するユーザー。
サイト連絡先。選択したデプロイサイトの担当者。Google はこの担当者に連絡して、Distributed Cloud 接続ハードウェアの配送のスケジュールを設定し、完了します。また、この担当者は、Google または Google 認定の SI と連携して、ハードウェアの修理と廃止措置を調整します。
ゾーンの連絡先。Distributed Cloud 接続ハードウェアをデプロイサイトの既存のネットワークと電源インフラストラクチャに統合する担当者。
注文 ID。この Distributed Cloud 接続ハードウェアの注文を識別する意味のある ID。
サイト識別子。この Distributed Cloud 接続ハードウェアの注文のデプロイ サイトのわかりやすい識別子。
ゾーン ID。移行先の Distributed Cloud コネクテッド ゾーンのわかりやすい識別子。サイトごとに 1 つのゾーンのみをデプロイする場合は、サイト ID をゾーン ID として使用します。
Google Cloud コンソールを使用して Distributed Cloud 接続ハードウェアを注文する
Google Cloud コンソールで、[注文] ページに移動します。
ターゲットの Google Cloud プロジェクトを選択します。
[注文する] をクリックします。
リクエスト フォームに入力して送信します。
Google Cloud 販売担当者が送信内容を確認し、注文を完了するために連絡します。担当者は次の操作を行います。
- ビジネス要件を確認して、ハードウェア構成を最終決定します。
- インストール要件に記載されているローカル ネットワーク、 Google Cloud プロジェクト、インストール サイト、その他の要件に関する詳細情報を収集します。
- この情報を使用して、配送前に Distributed Cloud ハードウェアを構成します。
GDC Hardware Management API を使用して Distributed Cloud コネクテッド ハードウェアを注文する
GDC Hardware Management API を使用すると、Distributed Cloud ハードウェアの注文をプログラムで実行できます。注文は、Distributed Cloud コネクテッドをデプロイする意思を示すものです。注文には、Distributed Cloud 接続デプロイのライフサイクル全体で使用される次の情報を含める必要があります。
- 注文管理と配送に関する連絡先
- 配送先の住所と配送に関連する情報
- ハードウェア構成
- ネットワークの構成
Google の営業担当者と協力して、顧客情報アンケート(CIQ)に回答し、Distributed Cloud 接続デプロイのスコープと構成を確定する必要があります。
GDC Hardware Management API を有効にする
GDC Hardware Management API を使用するには、ターゲットのGoogle Cloud プロジェクトで有効にする必要があります。手順は次のとおりです。
コンソール
Google Cloud コンソールで、[GDC Hardware Management API] ページに移動します。
[有効にする] をクリックします。
gcloud
次のコマンドを使用します。
gcloud services enable gdchardwaremanagement.googleapis.com
注文の構造
GDC Hardware Management API を使用して注文するには、Order リソースと、Order リソースが参照する Site、Zone、Hardware リソースを作成する必要があります。次に、Order リソースを Google に送信します。これらのリソースは標準の CRUD オペレーションをサポートしています。各リソースの名前は、ターゲットの Google Cloud プロジェクト ID と Google Cloud リージョンを含むパスです。
これらのリソースには次の機能があります。GDC Hardware Management API の使用方法については、Google Distributed Cloud CLI と API のリファレンスをご覧ください。
Order。このリソースは、1 つ以上の Distributed Cloud ゾーンの作成をリクエストします。このリソースを作成すると、create_order_response.nameフィールドでアクセス可能な名前が付けられます。Orderリソース名の形式は次のとおりです。`projects/`PROJECT_ID`/locations/`REGION`/orders/`ORDER_ID
ここで
PROJECT_ID: ターゲット Google Cloud プロジェクトの ID。REGION: Distributed Cloud ゾーンをデプロイする Google Cloud リージョン。ORDER_ID: この注文を識別する一意の ID。省略すると、値が自動的に生成されます。小文字、数字、ダッシュで構成される一意の注文 ID 値を指定することをおすすめします。そうしないと、注文作成の呼び出しが失敗した場合に、重複する注文が生成される可能性があります。
Site。このリソースは、Distributed Cloud ハードウェアをデプロイする物理的な場所を表します。このリソースには、初回納品と今後のメンテナンスのアクセスを調整する担当者の連絡先情報が含まれています。この連絡先は、注文時に指定した連絡先とは異なる場合があります。Hardware。このリソースは、Distributed Cloud 接続 SKU をインスタンス化し、Distributed Cloud サーバーまたはラックを表します。各Hardwareリソースは、関連付けられたOrder、Site、Zoneリソースを参照します。使用可能な SKU を確認するには、ListSkus API 呼び出しを使用します。Zone。このリソースは、Distributed Cloud 接続マシンと関連付けられたクラスタのネットワーク構成を指定します。Distributed Cloud ゾーンは、1 つ以上の Distributed Cloud 接続ラック、またはお客様のロケーションにデプロイされたすべての Distributed Cloud 接続サーバー マシンをカバーします。
Order リソースを Google に送信し、そのステータスが DRAFT から SUBMITTED または INFO_COMPLETE に変更されると、ほとんどのフィールド値が読み取り専用になります。
注文のライフサイクル
Order リソースは、State に記載されている状態のいずれかになります。関係者は注文にコメントを残すことができます。コメントは、対応する Order リソースの下にネストされた Comment リソースとして保存されます。GDC ハードウェア管理 API と Google Cloud コンソールの両方で、コメントの読み取りと送信が可能です。
GDC Hardware Management API は、次の注文ライフサイクル オペレーションをサポートしています。
注文を作成して送信します。注文を作成してすぐに送信することも、段階的に作成して、送信する準備が整うまで
DRAFT状態で保存することもできます。このプロセスについては、このガイドの残りの部分で説明します。注文ステータスを確認します。タイプ
INFO_COMPLETEで注文が送信され、Google と契約を締結している場合、注文はACCEPTED,BUILDING,SHIPPING、INSTALLING、COMPLETED.の順に状態が遷移します。関連するZoneリソースとHardwareリソースの状態は、Orderリソースと同時に更新されます。注文に関する問題を解決します。お客様から追加の情報が必要な場合や、お客様が Google と契約を締結していない場合、注文は
ADDITIONAL_INFO_NEEDED状態になり、コメントによる解決を待ちます。コメントで次の手順を確認し、不明な点がある場合は Google にお問い合わせください。送信されていない注文を削除します。送信されていない注文は、
DELETE呼び出しで削除できます。送信済みの注文を変更する。送信された注文、サイト、ゾーンは、それぞれの
PATCH呼び出しを使用して変更できます。次のフィールドは送信後に編集できます。- すべてのリソース:
display_name、labels - 注文:
organization_contact - サイト:
access_times、organization_contactのほとんどのフィールド(サイトのアドレスは除く) - ハードウェア: 次の少なくとも 1 つに該当する場合は
requested_installation_date。- 新しい日付が 45 日以上先である
- 新しい
requested_installation_dateが現在のrequested_installation_dateより後で、estimated_installation_dateが空の場合 - 新しい
requested_installation_dateが現在のrequested_installation_dateより遅く、estimated_installation_dateが現在から 7 日以上先である
注文の送信後に変更できるのは、この情報のみです。その他の情報を変更する場合は、コメントを記入して Google に依頼してください。
- すべてのリソース:
送信済みの注文をキャンセルします。送信済みの注文をキャンセルするには、キャンセルをリクエストするコメントを追加します。
ターゲット Google Cloud プロジェクトを選択する
Google Cloud プロジェクトは、一連の Google Cloud リソースをカプセル化し、それらを使用できるようにし、それらのリソースのアクセス制御と課金のルールを確立する構成要素です。
国や企業部門などの管理ドメインごと、またエッジとコアなどのハイレベルのユースケースごとに個別の Google Cloud プロジェクトを作成し、その Google Cloud プロジェクトを通じてドメインの Distributed Cloud 接続デプロイを管理することをおすすめします。
Google Cloud プロジェクトでは、次の管理タスクを実行できます。
- Distributed Cloud コネクテッド ハードウェアを注文します。
- Distributed Cloud 接続クラスタを構成し、フリートに登録します。
- ソフトウェアのロールアウトを管理する。
- Cloud Storage で Distributed Cloud 接続データを管理する。
- Secret Manager で Distributed Cloud コネクテッドの認証情報を管理します。
- Cloud Monitoring で Distributed Cloud 接続ログと指標を管理します。
実際の Google Cloud プロジェクト トポロジは、ビジネス要件によって異なります。プロジェクト間の依存関係を回避し、常に各 Google Cloud プロジェクト内でリソースを作成して使用することをおすすめします。
特定の Google Cloud プロジェクト内で注文されたハードウェアは、常にその Google Cloud プロジェクトで管理されます。
ターゲットの Google Cloud リージョンを選択する
Distributed Cloud 接続デプロイの Google Cloud リージョンの具体的な選択は、ビジネス要件と、対象の地理的位置の法的影響によって異なります。
Distributed Cloud 接続デプロイを既存のマルチリージョンGoogle Cloud フットプリントに統合する場合は、各 Distributed Cloud 接続ゾーンを、そのゾーンの依存関係をホストする Google Cloud リージョンにマッピングすることをおすすめします。
Distributed Cloud 接続デプロイを既存の Google Cloudフットプリントと統合しない場合は、信頼性を高めるために Google Cloud リージョン選択を多様化することをおすすめします。次に例を示します。
- 各 Distributed Cloud コネクテッド ゾーンを、最も近いサポートされている Google Cloud リージョンにマッピングします。これにより、管理プレーンの障害の影響を単一の地理的リージョンに限定できます。
複数のリージョンにまたがって Distributed Cloud コネクテッドをストライピングします。 Google Cloud これにより、管理プレーンの障害の影響を受ける Distributed Cloud 接続ゾーンの数が制限されますが、影響を受けるゾーンはより広い地理的リージョンに分散されます。
Distributed Cloud Connected は、次の Google Cloud リージョンをサポートしています。
アジア:
asia-east1、asia-east2、asia-northeast1、asia-northeast3、asia-south1、asia-south2、asia-southeast1、asia-southeast2ヨーロッパ:
europe-central2、europe-north1、europe-west1、europe-west2、europe-west3、europe-west4、europe-west6、europe-west8、europe-west9中東:
me-central1、me-west1オセアニア:
australia-southeast1北米:
northamerica-northeast1、northamerica-northeast2、us-central1、us-central2、us-east1、us-east4、us-east5、us-east7、us-south1、us-west1、us-west2、us-west3、us-west4、us-west8南米:
southamerica-east1、southamerica-west1
環境の設定
始める前に、次の前提条件を満たす必要があります。
次のコマンドを使用して、GDC Hardware Management API クライアント ライブラリをインストールします。
python3 -m pip install google-cloud-gdchardwaremanagement
ターゲットの Google Cloud プロジェクトで GDC Hardware Management API を有効にします。
GDC Hardware Management API を使用して Distributed Cloud コネクテッド ハードウェアの注文を作成して送信する
このセクションの手順は、GDC ハードウェア管理 API を使用して Order リソースを作成し、Google に送信する方法を示す例です。このセクションの手順を完了するには、 Google Cloud プロジェクトに GDC ハードウェア管理管理者(roles/gdchardwaremanagement.admin)ロールが必要です。使用可能な型とメソッドの詳細については、Python クライアント ライブラリのリファレンスをご覧ください。
Orderリソースを作成します。次に例を示します。import datetime from google.cloud import gdchardwaremanagement_v1alpha from google.protobuf.timestamp_pb2 import Timestamp from google.type import postal_address_pb2 client = gdchardwaremanagement_v1alpha.GDCHardwareManagementClient() contact = gdchardwaremanagement_v1alpha.Contact( given_name="John", family_name="Customer", email="jcustomer@example.com", phone="+1 123 456 7890", ) organization_contact = gdchardwaremanagement_v1alpha.OrganizationContact( address=postal_address_pb2.PostalAddress( organization="Example Organization", address_lines=["1800 Amphibious Blvd."], locality="Mountain View", administrative_area="CA", postal_code="94045", region_code="US", ), contacts=[contact], ) order = gdchardwaremanagement_v1alpha.Order( organization_contact=organization_contact, customer_motivation="I like Google Distributed Cloud!", fulfillment_time=Timestamp( seconds=int(datetime.datetime(2024, 11, 22, 9, 0).timestamp()), ), region_code="US", ) create_order_response = client.create_order( request=gdchardwaremanagement_v1alpha.CreateOrderRequest( parent="projects/myProject/locations/us-east1", order_id="myOrderID", order=order, ), ).result()
注文は
DRAFT状態になり、create_order_response.nameフィールドに保存されているリソース名が割り当てられました。この注文のステータスを変更または追跡する場合は、このリソース名を使用します。Siteリソースを作成する次に例を示します。site = gdchardwaremanagement_v1alpha.Site( organization_contact=organization_contact, google_maps_pin_uri="https://maps.app.goo.gl/z7bE8z8fffg6Sri46", ) create_site_response = client.create_site( request=gdchardwaremanagement_v1alpha.CreateSiteRequest( parent="projects/myProject/locations/us-east1", site_id="mySite", site=site, ), ).result()
Zoneリソースを作成する次に例を示します。zone = gdchardwaremanagement_v1alpha.Zone( contacts=[contact], network_config=gdchardwaremanagement_v1alpha.ZoneNetworkConfig( management_ipv4_subnet=gdchardwaremanagement_v1alpha.Subnet( address_range="192.0.2.0/24", default_gateway_ip_address="192.0.2.1", ), machine_mgmt_ipv4_range="192.0.2.8/29", kubernetes_ipv4_subnet=gdchardwaremanagement_v1alpha.Subnet( address_range="203.0.113.0/24", default_gateway_ip_address="203.0.113.1", ), kubernetes_node_ipv4_range="203.0.113.8/29", kubernetes_control_plane_ipv4_range="203.0.113.16/29", ), ) create_zone_response = client.create_zone( request=gdchardwaremanagement_v1alpha.CreateZoneRequest( parent="projects/myProject/locations/us-east1", zone_id="myZone", zone=zone, ), ).result()
Hardwareリソースを作成します。Distributed Cloud コネクテッド デプロイの各マシンに一意のhardware_id値を指定する必要があります。次に例を示します。from google.type import date_pb2 hardware = gdchardwaremanagement_v1alpha.Hardware( order=create_order_response.name, site=create_site_response.name, zone=create_zone_response.name, config=gdchardwaremanagement_v1alpha.HardwareConfig( sku="projects/myProject/locations/us-east1/skus/gdce-server-l", power_supply=gdchardwaremanagement_v1alpha.types.PowerSupply.POWER_SUPPLY_AC, ), physical_info=gdchardwaremanagement_v1alpha.HardwarePhysicalInfo( power_receptacle=gdchardwaremanagement_v1alpha.types.HardwarePhysicalInfo.PowerReceptacleType.NEMA_5_15, network_uplink=gdchardwaremanagement_v1alpha.types.HardwarePhysicalInfo.NetworkUplinkType.RJ_45, voltage=gdchardwaremanagement_v1alpha.types.HardwarePhysicalInfo.Voltage.VOLTAGE_110, amperes=gdchardwaremanagement_v1alpha.types.HardwarePhysicalInfo.Amperes.AMPERES_15, ), installation_info=gdchardwaremanagement_v1alpha.HardwareInstallationInfo( rack_location="Floor 2, Room 201, Row 7, Rack 3", power_distance_meters=2, switch_distance_meters=2, rack_unit_dimensions=gdchardwaremanagement_v1alpha.Dimensions( width_inches=19, height_inches=1.75, depth_inches=30, ), rack_space=gdchardwaremanagement_v1alpha.RackSpace( start_rack_unit=12, end_rack_unit=12, ), rack_type=gdchardwaremanagement_v1alpha.types.HardwareInstallationInfo.RackType.FOUR_POST, ), requested_installation_date=date_pb2.Date(year=2024, month=11, day=22), ) create_hardware_response = client.create_hardware( request=gdchardwaremanagement_v1alpha.CreateHardwareRequest( parent="projects/myProject/locations/us-east1", hardware_id="machineHardwareID", hardware=hardware, ), ).result()
Orderリソースを Google に送信します。submit_order_response = client.submit_order( request=gdchardwaremanagement_v1alpha.SubmitOrderRequest( name=create_order_response.name, type_=gdchardwaremanagement_v1alpha.types.SubmitOrderRequest.Type.INFO_COMPLETE, ), ).result()
INFO_COMPLETEの送信タイプは、ZoneリソースとHardwareリソースに必要な情報をすべて提供したことを示します。フィールド値が欠落している場合、送信は失敗し、問題を説明するエラー メッセージが表示されます。注文を完全に登録せずに Google との会話を開始する場合は、INFO_PENDINGステータスで送信して、これらの検証をスキップします。
テスト
テスト注文を送信する場合は、Google にお問い合わせのうえ、サンドボックス環境へのアクセス権を取得してください。プロジェクトまたは組織にアクセス権が付与されたら、fake- 接頭辞で識別可能なテスト SKU を使用できます。テスト注文は、前述のステージを進行しますが、金銭的な請求やハードウェアの発送は行われません。
トラブルシューティング
このセクションでは、よく発生するエラー、その原因、利用可能な解決策について説明します。
エラー: 400 FAILED_PRECONDITION
API 呼び出しに対するレスポンスで FAILED_PRECONDITION ステータスとともに 400 エラーコードを受け取った場合は、完了しようとしているオペレーションに対してリクエストが有効であることを確認してください。無効なリクエストの例としては、フィールドまたは値が欠落している Order リソースを送信する、以前に送信された Order リソースに関連付けられている Hardware リソースを削除しようとするなどがあります。
エラー: 400 INVALID_ARGUMENT
API 呼び出しに対するレスポンスで INVALID_ARGUMENT ステータスとともに 400 エラーコードが返された場合は、フィールド名が正しくない、値が想定される型と一致しない、値が欠落しているなどの問題がないか確認してください。PATCH リクエストで updateMask を使用し、updateMask で指定された 1 つ以上のフィールドが無効な場合にも、このエラーが発生することがあります。
この問題を解決するには、GDC ハードウェア管理 API を参照して、すべてのフィールド名と値(形式を含む)が正しいことを確認します。JSON ペイロードを使用している場合は、必要な情報がすべてペイロードに含まれていることを確認します。
エラー: 401 UNAUTHENTICATED
API 呼び出しに対するレスポンスで UNAUTHENTICATED ステータスとともに 401 エラーコードを受け取った場合は、認証構成を確認してください。詳細については、アプリケーションのデフォルト認証情報を設定するをご覧ください。
エラー: 403 PERMISSION_DENIED
API 呼び出しに対するレスポンスで PERMISSION_DENIED ステータスとともに 403 エラーコードが返された場合は、API 呼び出しに使用されたサービス アカウントに、ターゲット オブジェクトとリソースにアクセスするための十分な権限があるかどうかを確認します。また、認証情報が正しく、期限切れになっていないことを確認します。
エラー: 404 NOT_FOUND
API 呼び出しに対するレスポンスで NOT_FOUND ステータスとともに 404 エラーコードを受け取った場合は、API 呼び出しで指定されたリソース名とパスが有効であることを確認します。GDC ハードウェア管理 API を参照して、リクエスト URL が正しく構造化され、URL に含まれるすべてのフィールドが有効であることを確認します。