登録トークンを使ってGCPサーバーをデプロイする

このトピックでは、ユーザーデータおよびアドバンストサーバーアクセスの登録トークンを使ってUbuntuまたはDebian GCP(Google Cloud Platform)サーバーをsystemdによってデプロイする方法について説明します。このプロセスは、特定のニーズに合わせて修正が必要になる場合があります。

ユーザーデータを使用してクラウドサーバーを作成することは、クラウドプロバイダーを使用してサーバーを作成するときに、アドバンストサーバーアクセスのエージェントを同時にインストールすることを意味します。ユーザーデータを使用して、新しいクラウドサーバーにソフトウェアをインストールする場合、このインストールは任意のクラウドプロバイダーを介して実行できますが、ユーザーデータは必要な特定のソフトウェアを決定するのに役立ちます。クラウドサーバーの作成時にアドバンストサーバーアクセスのエージェントをクラウドサーバーにインストールする必要はありませんが、サーバーの作成と同時に起動スクリプトとしてインストールを実行すると、クラウドのデプロイメントが可能な限り安全になります。

前提条件

Google Cloud Platform

必要条件

説明

Google Cloud Platformアカウント チームの仮想マシンを作成するためにGCPコンソールにアクセスするには、Google Cloud Platformのアカウントが必要です。

アドバンストサーバーアクセス

必要条件

説明

アドバンストサーバーアクセスのチーム アドバンストサーバーアクセス内のOkta組織を表す最上位レベルのオブジェクトです。
アドバンストサーバーアクセスのプロジェクト ユーザー、グループ、サーバーを編成するチームの承認の範囲です。

アドバンストサーバーアクセスの登録トークンを作成する

  1. アドバンストサーバーアクセスのダッシュボードで[Projects(プロジェクト)]をクリックします。
  2. サーバーを追加するプロジェクトを選択します。
  3. Enrollment(登録)]タブに移動し、[Create Enrollment Token(登録トークンを作成する)]をクリックします。

    注:サーバーをチームに追加するたびに、同じ登録トークンを使うことができます。既に登録トークンを作成している場合は、この手順を省略してください。

  4. トークンの説明を入力し、[Submit(送信)]をクリックします。

トークンが正常に作成されたら、[Token(トークン)]フィールドの文字列を記録して、後の手順で使用するために安全な場所に保存します。

GCPプロジェクトを作成する

  1. Google Cloud Platformコンソールへ移動し、アカウントにサインインします。
  2. Select a project(プロジェクトを選択する) ]メニューの[New Project(新規プロジェクト)]をクリックします。
  3. プロジェクトに新しい名前を付け、[Location(場所)]フィールドを使用して親組織またはフォルダーを設定します。
  4. プロジェクトの作成が終了したら、[Create(作成)]をクリックします。
  5. 新しいプロジェクトのダッシュボードで、[Project Info(プロジェクト情報)]セクションからプロジェクトID番号をコピーし、安全な場所で保管します。

    注:プロジェクトのダッシュボードを見つけるには、コンソールの上部にある[Select a project(プロジェクトの選択)]フィールドを使用します。

ユーザーデータを使用して仮想マシンを作成して登録する

  1. GCPコンソールで[Compute Engine(コンピューティングエンジン)]および[VM instances(VMインスタンス)]を選択します。
  2. メッセージが表示されたら、[Select a project(プロジェクトを選択する)]ドロップダウンから新しいプロジェクトを選択します。
  3. Create(作成)]をクリックします。
  4. 新しいサーバーに名前を作成し、地域とゾーンを設定します。これらのオプションは、サーバーの場所を特定します。
  5. [Management(管理)]、[security(セキュリティ)]、[disks(ディスク)]、[networking(ネットワーク)]、[sole tenancy(単一テナント)]の順にクリックして展開します。
  6. User Data(ユーザーデータ)]フィールドに以下を入力します。

    #!/bin/bash echo "Add an enrollment token" sudo mkdir -p /var/lib/sftd echo "<enrollment-token>" | sudo tee /var/lib/sftd/enrollment.token export DEBIAN_FRONTEND=noninteractive echo "Add a basic sftd configuration" sudo mkdir -p /etc/sft/ sftcfg=$(cat <<EOF --- # CanonicalName:このホストへの接続時にクライアントが使用/認識する名前を指定します。CanonicalName: "ubuntu-target" EOF ) echo -e "$sftcfg" | sudo tee /etc/sft/sftd.yaml echo "Retrieve information about new packages" sudo apt-get update sudo apt-get install -y curl echo "Add the ScaleFT testing apt repo to your /etc/apt/sources.list system config file" echo "deb http://pkg.scaleft.com/deb/ linux main" | sudo tee -a /etc/apt/sources.list echo "Trust the repository signing key" curl -C - https://dist.scaleft.com/pki/scaleft_deb_key.asc | sudo apt-key add - echo "Retrieve information about new packages" sudo apt-get update echo "Install sftd" sudo apt-get install scaleft-server-tools

    注:このスクリプトはサーバー用のsftd.yamlファイルを作成し、正規名としてubuntu-targetを使用します。必要に応じて、この情報を変更、生成して、チームとプロジェクトの環境に適合させます。

  7. [User Data(ユーザーデータ)]フィールドの<enrollment_token>を、以前に作成した登録トークンで置き換えます。
  8. [Create(作成)]をクリックします。

VM instances(VMインスタンス)]ページでサーバーの作成が完了したら、サーバーに接続する前に、サーバーがアドバンストサーバーアクセスのプロジェクトの[Server(サーバー)]タブにリストされていることを確認してください。

次の手順

サーバー登録を確認する