ワークステーションのクローンを作成する

新しいワークステーションを作成するときに、既存のワークステーションのコンテンツをすばやく複製できます。これは、ソース ワークステーションのリージョンで不安定な状態が発生している場合に役立ちます。

始める前に

ワークステーションを複製する前に、ソース ワークステーションに対する適切な権限があることを確認してください。

  1. ソース ワークステーションに対する workstations.workstations.use 権限が必要です。
  2. 新しいワークステーションを作成するプロジェクトの Cloud Workstations サービス エージェントには、ソース ワークステーションを含むプロジェクトに対する compute.disks.createSnapshotcompute.snapshots.useReadOnly が必要です。

ワークステーションのクローンを作成する

ワークステーションのクローンを作成するには、新しいワークステーションを作成し、ファイルのコピー元となるソース ワークステーションを指定します。

    gcloud workstations create WORKSTATION \
      --project=PROJECT \
      --region=REGION \
      --cluster=CLUSTER_NAME \
      --config=CONFIG_NAME \
      --source-workstation=SOURCE_WORKSTATION

次のように置き換えます。

  • WORKSTATION: 新しいワークステーションの ID または完全修飾識別子

  • PROJECT: 新しいワークステーションを含むプロジェクト

  • REGION: 新しいワークステーションが配置されるリージョン(例: us-central1

  • CLUSTER_NAME: 新しいワークステーションを含むワークステーション クラスタの名前

  • CONFIG_NAME: 新しいワークステーションが追加されるワークステーション構成の名前

  • SOURCE_WORKSTATION: 新しいワークステーションの永続ディレクトリのコピー元となるソース ワークステーションの完全修飾識別子

    ソース ワークステーションの識別子は次のようになります。

    projects/SOURCE_PROJECT/locations/SOURCE_REGION/workstationClusters/SOURCE_CLUSTER/workstationConfigs/SOURCE_CONFIG/workstations/SOURCE_WORKSTATION
    

    次のように置き換えます。

    • SOURCE_PROJECT: ソース ワークステーションを含むプロジェクト
    • SOURCE_REGION: ソース ワークステーションが存在するロケーション
    • SOURCE_CLUSTER: ソース ワークステーションを含むワークステーション クラスタの名前
    • SOURCE_CONFIG: ソース ワークステーションを含むワークステーション構成の名前
    • SOURCE_WORKSTATION: ソース ワークステーションの ID

詳細については、gcloud workstations create をご覧ください。

API リファレンス情報については、RESTRPC をご覧ください。

ワークステーションのファイルを大容量ディスクを備えた新しいワークステーションにコピーする

ワークステーションをクローン作成すると、新しいワークステーションはソースディスクのサイズを保持します。ストレージ容量を増やす必要がある場合は、ワークステーションのファイルを大容量のディスクを備えた新しいワークステーションにコピーします。

  1. より大きな永続ディスクを指定する構成を使用して、新しい移行先ワークステーションを作成します。

  2. 移行元ワークステーションと移行先ワークステーションの両方を起動します。

  3. Google Cloud コンソールで起動するか、SSH を使用して接続して、宛先ワークステーションのターミナルにアクセスします。

  4. 宛先ワークステーションのターミナルから、gcloud workstations start-tcp-tunnel を使用して送信元ワークステーションへの TCP トンネルを作成します。

    gcloud workstations start-tcp-tunnel \
      --project=SOURCE_PROJECT \
      --region=SOURCE_REGION \
      --cluster=SOURCE_CLUSTER \
      --config=SOURCE_CONFIG \
      SOURCE_WORKSTATION \
      WORKSTATION_PORT \
      --local-host-port=:LOCAL_PORT
    

    次のように置き換えます。

    • WORKSTATION_PORT: トラフィックを送信する送信元ワークステーションのポート(デフォルト: 22)。
    • LOCAL_PORT(省略可): トラフィックの送信元となるローカルホスト ポート。有効なポート番号は 102465535 です。--local-host-port フラグを省略するか、0 のポートを指定すると、未使用のポートが自動的に選択されます。

    トンネルの準備が整うと、ポート番号が表示されます。

    Listening on port [LOCAL_PORT].
    
  5. 宛先ワークステーションの別のターミナルで scp を実行し、TCP トンネルがリッスンしているポートを指定して、ソース ワークステーションからファイルをコピーします。

    scp -rP LOCAL_PORT \
        user@localhost:~/SOURCE_DIRECTORY \
        ~/DESTINATION_DIRECTORY
    

    次のように置き換えます。

    • SOURCE_DIRECTORY: ソース ワークステーションからコピーするディレクトリのパス
    • DESTINATION_DIRECTORY: 新しいワークステーション上の宛先ディレクトリのパス