メインコンテンツまでスキップ

Deployment on GCP

このトピックでは、Google Cloud での手動デプロイメントに関する包括的なガイドラインを提供します。このプロセスに時間をかけたくない場合や、テスト目的のみでクラスタを作成したい場合は、クイックデプロイメントを設定して実行することができます。

CelerData は、GCP 上でのエラスティッククラスタのデプロイメントを簡素化するユーザーフレンドリーなデプロイメントウィザードを提供しており、以下の4つの簡単なステップで行えます。

  • STEP1: クラスタリソースの設定
  • STEP2: GCP 認証情報の設定
  • STEP3: クラスタへのアクセスの設定
  • STEP4: GCP クラウド上でのクラスタのデプロイ
Terraform

Terraform を使用してクラスタをデプロイするには、Terraform Provider を参照してください。

注記

CelerData は、すべてのデータが共有オブジェクトストレージ上にあり、キャッシュのみがコンピュートノード (CN) にローカルであるエラスティック共有データクラスタをサポートしています。

エラスティッククラスタの詳細については、warehouse overview を参照してください。

デプロイメントウィザードを開始する

デプロイメントウィザードを開始するには、以下の手順に従ってください。

  1. CelerData Cloud BYOC コンソール にサインインします。
  2. Clusters ページで、Create cluster をクリックします。
  3. 表示されるダイアログボックスで、Elastic cluster を選択し、クラウドプロバイダーとして GCP を選択し、Next をクリックします。
注記

手動デプロイメントを開始する前に、Google Cloud プロジェクトを作成し、必要な API を有効にする 必要があります。

手動デプロイメントの設定と実行

デプロイメントを成功させるためには、データ認証情報、デプロイメント認証情報、ネットワーク構成を提供する必要があります。

  • データ認証情報

    データ認証情報は、クエリプロファイルを保存するために使用される Cloud Storage バケットへの読み取りおよび書き込み権限を宣言します。GCP のデータ認証情報を管理する を参照してください。

  • デプロイメント認証情報

    デプロイメント認証情報は、CelerData のパブリックサービスアカウントを参照し、GCP プロジェクト内でクラウドリソースを起動および管理するために必要な権限を付与します。これにより、CelerData はデプロイメントおよびフォローアップスケーリングに必要なリソースを起動できます。GCP のデプロイメント認証情報を管理する を参照してください。

  • ネットワーク構成

    ネットワーク構成は、独自の VPC 内のクラスタノード間および CelerData の VPC と独自の VPC 間の接続を可能にします。GCP のネットワーク構成を管理する を参照してください。

デプロイメントウィザードを開始した後(前のセクション「デプロイメントウィザードを開始する」で説明されています)、デプロイメントのための4つの必須ステップ(STEP 1 から STEP 4)を順に案内されます。

STEP 1: クラスタリソースの設定

ビジネス要件に基づいてクラスタを設定し、必要に応じて Add label をクリックしてクラスタに1つ以上のラベルを追加します。次に、Manual deployment をクリックして続行します。ここで追加したラベルは、クラスタに関連付けられた GCP クラウドリソースに添付されます。

注記
  • CelerData は Free Developer Tier を提供しています。これを使用するには、4 CPU コアと 16-GB RAM を提供するインスタンスタイプを選択する必要があります。
  • 4 CPU コアと 16-GB RAM は、CelerData ノードの最小構成パッケージでもあります。

以下の構成項目を設定します。

ParameterRequiredDescription
Cluster nameYesクラスタの名前を入力します。クラスタが作成された後、名前を変更することはできません。後でクラスタを簡単に識別できるような情報豊富な名前を入力することをお勧めします。
GCP regionYesクラスタをホストする GCP リージョンを選択します。CelerData がサポートするリージョンについては、Supported cloud platforms and regions を参照してください。
Coordinator HA modeNoコーディネータの HA モードを有効または無効にします。コーディネータの HA モードはデフォルトで無効になっています。
  • コーディネータの HA モードが無効の場合、コーディネータは1つだけデプロイされます。この設定は、CelerData がどのように機能するかを学ぶための概念実証クラスタを作成する場合や、テスト目的のみの小規模クラスタを作成する場合に推奨されます。
  • コーディネータの HA モードが有効な場合、3つのコーディネータがデプロイされます。この設定は、プロダクション環境に準備が整ったクラスタを作成する場合に推奨されます。3つのコーディネータがあることで、クラスタはより多くの高並行クエリを処理しながら高可用性を確保できます。
Coordinator node sizeYesクラスタ内のコーディネータノードのインスタンスタイプを選択します。CelerData がサポートするインスタンスタイプについては、Supported instance types を参照してください。
Compute node sizeYesクラスタ内のデフォルトウェアハウスのコンピュートノードのインスタンスタイプを選択します。CelerData がサポートするインスタンスタイプについては、Supported instance types を参照してください。
Compute storage sizeNoデフォルトウェアハウスのコンピュートノードのストレージサイズを指定します。このフィールドの横にあるボックスにチェックを入れることで、ボリュームの数をカスタマイズすることもできます。このフィールドは Hyperdisk バックのインスタンスタイプにのみ利用可能です。
Compute node countYesクラスタ内のデフォルトウェアハウスのコンピュートノードの数を指定します。処理するデータ量に基づいてコンピュートノードの数を決定できます。デフォルト値は 1 です。

STEP 1: クラスタリソースの設定

Advance Settings では、以下を行うことができます。

  • 終了保護を有効にする。

    終了保護を有効にすることで、クラスタが誤って削除されるのを防ぎ、データ損失のリスクを排除します。クラスタに対して終了保護が有効になっている場合、クラスタを削除しようとすると失敗し、エラーが返されます。クラスタを削除するには、まず手動で終了保護を無効にする必要があります。

    クラスタが作成された後、この機能を有効または無効にするには、クラスタ詳細ページの Cluster parameters タブの Other セクションで行います。

  • コーディネータノードストレージの自動スケーリングポリシーを定義する。

    ビジネスのワークロードが予測不可能であり、クラスタ作成時に固定されたストレージボリュームの数を割り当てることができない場合、CelerData クラスタ内のノードに対してストレージの自動スケーリングを有効にすることができます。この機能を有効にすると、CelerData は設定されたストレージスペースが不足していることを検出した場合に、自動的にストレージサイズをスケールアップします。

    ストレージの自動スケーリングポリシーを定義するには、以下の手順に従います。

    1. Coordinator Storage に続いてストレージ自動スケーリングスイッチをオンにします。

    2. 自動スケーリング操作をトリガーするストレージ使用率のしきい値(パーセンテージ)を設定します。このしきい値は 80% から 90% の間で設定できます。ノードのストレージ使用率がこのしきい値に達し、5 分以上続いた場合、CelerData は以下の手順で定義したステップサイズでストレージをスケールアップします。

    3. 各自動スケーリング操作のステップサイズを設定します。ステップサイズは固定サイズ(GB)またはパーセンテージで設定できます。例えば、50 GB または 15%(元のストレージサイズの)です。

    4. 各ノードの最大ストレージサイズを設定します。CelerData は、このしきい値に達したときにストレージのスケールアップを停止します。

    important
    • 2 回のスケーリング操作(手動スケーリングと自動スケーリングを含む)の間隔として、最低 6 時間が必須です。
    • 各ストレージの最大サイズは 64 TB です。
    • コンピュートノードはストレージの自動スケーリングをサポートしていません。

STEP 2: GCP 認証情報の設定

このステップでは、新しいデータ認証情報と新しいデプロイメント認証情報を作成するか、以前の成功したデプロイメントで CelerData によって自動的に作成された既存のものを選択する必要があります。設定が完了したら、Next をクリックして続行します。

CelerData を初めて使用する場合は、新しいデータ認証情報と新しいデプロイメント認証情報を作成することをお勧めします。

新しい認証情報を作成することを選択する

注記

新しい認証情報を作成する前に、Google Cloud プロジェクトを作成し、必要な API を有効にする 必要があります。

以下の図に示すように、No, I need to manually create new credentials from scratch を選択します。次に、データ認証情報とデプロイメント認証情報を作成します。

STEP 2: GCP 認証情報の設定 - 新しい認証情報を作成

データ認証情報を作成する
  1. 共有 VPC の下でクラスタをデプロイしたい場合は、Does your deployment involve Shared VPCs の横にあるスイッチをオンにして共有 VPC を有効にします。

    Shared VPC は、GCP 組織が複数のプロジェクトからのリソースを共通の VPC ネットワークに接続し、そのネットワークの内部 IP アドレスを使用して安全かつ効率的に通信できるようにします。

    共有 VPC にはホストプロジェクトとホストプロジェクトに接続された複数のサービスプロジェクトが含まれます。ホストプロジェクトの VPC ネットワークは共有 VPC ネットワークと呼ばれます。適格なリソース は、サービスプロジェクトから共有 VPC ネットワークのサブネットを使用できます。

  2. Google Cloud コンソール にサインインし、Compute Engine 用のサービスアカウントを作成する に記載された手順に従って、Cloud Storage バケットにアクセスできるサービスアカウントを作成し、IAM & Admin > Service accounts ページの Email フィールドからサービスアカウントのメールをコピーし、Cloud Storage > Buckets ページの Name フィールドからバケット名をコピーし、後でアクセスできる場所に保存します。

  3. CelerData Cloud BYOC コンソールに戻ります。Data credential セクションで、Bucket name フィールドにバケットの名前を入力し、Instance service account フィールドにサービスアカウント名を貼り付けます。

    Data credential セクションのフィールドについては、以下の表を参照してください。

    FieldRequiredDescription
    Bucket nameYesバケットの名前を入力します。
    NOTE
    • クラスタを作成する際、クラスタと同じリージョンにあるバケットを参照するデータ認証情報のみを使用できます。
    • Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)からのバケットの名前を入力する必要があります。
    Instance service accountYesCelerData クラスタにバケットへのアクセス権を付与するために作成したインスタンスサービスアカウントの名前を入力します。
    NOTE
    Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)からのインスタンスサービスアカウントを入力する必要があります。
デプロイメント認証情報を作成する
  1. CelerData Cloud BYOC コンソールで、Grant access to の横にあるコピー ボタンをクリックして、クラスタデプロイメント用の CelerData のパブリックサービスアカウントをコピーします。

  2. Google Cloud コンソール にサインインし、CelerData に Google Cloud リソースの権限を付与する に記載された手順に従って、クラスタデプロイメント用に CelerData に必要な権限を付与し、プロジェクトダッシュボードの Project info セクションから Project ID をコピーし、後でアクセスできる場所に保存します。

  3. CelerData Cloud BYOC コンソールに戻ります。Deployment credential セクションで、Project ID フィールドにプロジェクト ID を貼り付けます。これはプロジェクト名ではありません。

    Deployment credential セクションのフィールドについては、以下の表を参照してください。

    FieldRequiredDescription
    Credential methodN/AGCP でリソースを起動するための CelerData の権限を制御するために使用する認証情報のタイプです。値は IAM role に固定されています。
    Grant access toN/AGCP プロジェクト内でリソースを起動および管理するために使用される CelerData のパブリックサービスアカウントです。このサービスアカウントに必要な権限を付与する必要があります。
    Project IDYesGCP で CelerData クラスタをデプロイするために作成した Google Cloud プロジェクトの ID を入力します。これはプロジェクト名ではありません。
    NOTE
    Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)の ID を入力する必要があります。

既存の認証情報を選択することを選択する

以下の図に示すように、Yes, I hope to reuse the previous credentials and cloud storage を選択します。次に、既存のデータ認証情報と既存のデプロイメント認証情報を選択します。

STEP 2: GCP 認証情報の設定 - 既存の認証情報を再利用

注記

既存の認証情報を再利用する場合、共有 VPC 機能に関して、デプロイメント認証情報が次のステップで指定されたネットワーク構成のサブネット設定と一致していることを確認する必要があります。CelerData は一貫性を検証し、デプロイメント認証情報が共有 VPC を無効にしており、ネットワーク構成に共有 VPC からのサブネットがある場合は拒否されます。

データ認証情報を選択する

Data credential セクションで、Reuse data credential ドロップダウンリストを展開し、クラスタと同じ GCP リージョン(つまり、STEP 1 で選択したリージョン)に属するデータ認証情報を選択します。

NOTE

ドロップダウンリストには、手動で作成したデータ認証情報と、以前の成功したデプロイメントで CelerData によって自動的に作成されたデータ認証情報がすべて表示されます。

データ認証情報を選択すると、CelerData は自動的に Bucket name および Instance service account フィールドを入力します。

Data credential セクションのフィールドについては、以下の表を参照してください。

FieldRequiredDescription
Bucket nameYesバケットの名前を入力します。
NOTE
  • クラスタを作成する際、クラスタと同じリージョンにあるバケットを参照するデータ認証情報のみを使用できます。
  • Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)からのバケットの名前を入力する必要があります。
Instance service accountYesCelerData にバケットへのアクセス権を付与するために作成したインスタンスサービスアカウントの名前を入力します。
NOTE
Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)からのインスタンスサービスアカウントを入力する必要があります。
デプロイメント認証情報を選択する

Deployment credential セクションで、Reuse deployment credential ドロップダウンリストを展開し、クラスタと同じ GCP リージョン(つまり、STEP 1 で選択したリージョン)に属するデプロイメント認証情報を選択します。

NOTE

ドロップダウンリストには、手動で作成したデプロイメント認証情報と、以前の成功したデプロイメントで CelerData によって自動的に作成されたデプロイメント認証情報がすべて表示されます。

デプロイメント認証情報を選択すると、CelerData は自動的に Project ID フィールドを入力します。

Deployment credential セクションのフィールドについては、以下の表を参照してください。

FieldRequiredDescription
Project IDYesGCP でリソースを起動および管理するために作成した Google Cloud プロジェクトの ID を入力します。
NOTE
Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)の ID を入力する必要があります。

STEP 3: クラスタへのアクセスの設定

このステップでは、以下を行う必要があります。

  • ネットワーク構成を設定します。新しいネットワーク構成を作成するか、以前の成功したデプロイメントで CelerData によって自動的に作成された既存のものを選択します。

    NOTE

    CelerData は、複数のクラスタ間で同じネットワーク構成を再利用することを許可しており、複数のクラスタが同じ VPC およびサブネットを共有することができます。

  • クラスタ認証情報を設定します。

  • 接続性をテストします。

STEP 3: クラスタへのアクセスの設定

ネットワーク構成を設定する

Network configuration セクションで、新しいネットワーク構成を作成するか、既存のものを選択します。

CelerData を初めて使用する場合は、新しいネットワーク構成を作成することをお勧めします。

新しいネットワーク構成を作成する
  1. Google Cloud コンソール にサインインし、CelerData on GCP 用の VPC ネットワーク、サブネット、およびファイアウォールルールを作成する に記載された手順に従って、VPC ネットワーク、サブネット、およびファイアウォールルールを作成し、VPC ネットワークの VPC network details ページの Subnets タブからサブネット名をコピーし、VPC ネットワークのファイアウォールルールのターゲットタグを Network Security > Firewall policies ページの Targets フィールドからコピーし、後でアクセスできる場所に保存します。

    NOTE

    クラスタデプロイメントに使用するサブネットは、クラスタがデプロイされるリージョン(つまり、STEP 1 で選択したリージョン)に存在する必要があります。

  2. CelerData Cloud BYOC コンソールに戻ります。Network Configuration セクションで、サブネット名を Subnet name フィールドに貼り付け、ファイアウォールルールのターゲットタグを Network tag フィールドに貼り付けます。

    エンドツーエンドのプライベートリンクを有効にしたい場合は、Advanced security settings をチェックし、プライベートサービス接続の接続 ID を PSC connection ID フィールドに貼り付ける必要があります。Create a Private Service Connect Endpoint に記載された手順に従って、プライベートサービス接続エンドポイントを作成します。プライベートリンクが有効な場合でも、クラスタコンソールにパブリックネットワーク経由でアクセスしたい場合は、Enable public access to the Cluster console をチェックする必要があります。パブリックアクセスが有効な場合、CelerData の VPC はインターネットを介して独自の VPC と通信します。CelerData のプライベートリンクの詳細については、End-to-End Private Link Architecture および End-to-End Private Link Configuration and Deployment を参照してください。

    Network Configuration セクションのフィールドについては、以下の表を参照してください。

    FieldRequiredDescription
    Subnet nameYesデータ分析のためにクラスタノードをデプロイするために使用するサブネットの名前です。
    NOTE
    Shared VPC を有効にしている場合、ホストプロジェクト(つまり、共有 VPC がデプロイされているプロジェクト)のサブネット名を指定する必要があります。
    Network tagYesクラスタノード間の接続を有効にするために使用するファイアウォールルールのターゲットタグです。
    NOTE
    Shared VPC を有効にしている場合、ホストプロジェクト(つまり、共有 VPC がデプロイされているプロジェクト)のターゲットタグを指定する必要があります。
    PSC connection IDNoCelerData の VPC と独自の VPC 間の直接的で安全な接続を可能にするために作成する Private Service Connect 接続の ID です。
    PSC 接続の作成方法については、Create a Private Service Connect Endpoint を参照してください。
    NOTE
    • PSC connection ID が設定されていない場合、プライベートサービス接続は構築されず、CelerData の VPC はインターネットを介して独自の VPC と通信します。
    • Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)からの PSC 接続の ID を入力する必要があります。
既存のネットワーク構成を選択する

Reuse network configuration ドロップダウンリストを展開し、クラスタと同じ GCP リージョン(つまり、STEP 1 で選択したリージョン)に属するネットワーク構成を選択します。

NOTE

ドロップダウンリストには、手動で作成したネットワーク構成と、以前の成功したデプロイメントで CelerData によって自動的に作成されたネットワーク構成がすべて表示されます。

ネットワーク構成を選択すると、CelerData は自動的に Subnet nameNetwork tag、および(オプションで)PSC connection ID フィールドを入力します。

Network Configuration セクションのフィールドについては、以下の表を参照してください。

FieldRequiredDescription
Subnet nameYesデータ分析のためにクラスタノードをデプロイするために使用するサブネットの名前です。
NOTE
Shared VPC を有効にしている場合、ホストプロジェクト(つまり、共有 VPC がデプロイされているプロジェクト)のサブネット名を指定する必要があります。
Network tagYesクラスタノード間の接続を有効にするために使用するファイアウォールルールのターゲットタグです。
NOTE
Shared VPC を有効にしている場合、ホストプロジェクト(つまり、共有 VPC がデプロイされているプロジェクト)のターゲットタグを指定する必要があります。
PSC connection IDNoCelerData の VPC と独自の VPC 間の直接的で安全な接続を可能にするために作成する Private Service Connect 接続の ID です。
PSC 接続の作成方法については、Create a Private Service Connect Endpoint を参照してください。
NOTE
  • PSC connection ID が設定されていない場合、プライベートサービス接続は構築されず、CelerData の VPC はインターネットを介して独自の VPC と通信します。
  • Shared VPC を有効にしている場合、サービスプロジェクト(つまり、クラスタがデプロイされるプロジェクト)からの PSC 接続の ID を入力する必要があります。

クラスタ認証情報を設定する

Cluster credential セクションで、Admin password フィールドに admin アカウントのパスワードを入力するか、Admin password フィールドの横にある Random をクリックして、CelerData によって生成されたパスワードを取得します。

NOTE

  • admin アカウントはクラスタの管理者であり、CelerData クラウドアカウント内で有効なすべての権限を持っています。
  • クラスタが作成された後、クラスタ詳細ページに移動し、ページの右上隅で Manage > Reset password を選択して admin アカウントのパスワードをリセットできます。クラスタが Running 状態にある場合にのみ admin アカウントのパスワードをリセットできます。

接続性をテストする

  1. Test connect をクリックして、CelerData の VPC が独自の VPC に接続できることを確認します。

    接続がテストに合格すると、Start create ボタンが有効になります。

  2. Start create をクリックして続行します。

STEP 4: GCP 上でクラスタをデプロイする

前の3つのステップを完了すると、CelerData はクラウドリソースを自動的に起動し、独自の VPC にクラスタをデプロイします。これには数分かかります。

STEP 4: クラウド上でクラスタをデプロイする

デプロイメントが完了すると、以下の図に示すメッセージが表示されます。

Create Cluster - Step 4 - Success

メッセージ内の Preview Cluster をクリックしてクラスタを表示できます。また、Clusters ページに戻って、正常にデプロイメントされたクラスタを表示することもできます。

STEP 5: デフォルトストレージボリュームを設定する

デフォルトでは、すべてのデータベースとテーブルはデフォルトストレージボリュームに作成されます。デフォルトストレージボリュームに使用される GCS バケットは、STEP 2 で指定されました。

Create Cluster - Step 2 - GCS bucket

GCP 上の CelerData BYOC のプライベートプレビュー中に、デフォルトストレージボリュームはクラスタを作成した後、データベースやテーブルを作成する前に手動で作成する必要があります。

XML API for interoperability は、GCS ストレージを S3 として操作するために使用されます。一般的に、S3 構成と GCS 構成の間の唯一の変更は次のとおりです。

  1. エンドポイント https://storage.googleapis.com を使用する
  2. 認証に HMAC キーとシークレットを使用する

interoperability XML API や HMAC キーに慣れていない場合は、このページの下部にリンクがあります。

GCS にストレージボリュームを作成する

必要なもの:

  1. クラスタが配置されている GCS リージョン(これは STEP 1 で指定されました)
  2. STEP 2 で指定された GCS バケット名
  3. バケット用の HMAC アクセスキーと HMAC シークレットキー

SQL クライアントを使用して管理者ユーザーとしてクラスタに接続し、STORAGE VOLUME を作成します(バケットと認証の詳細を置き換えてください):

CREATE STORAGE VOLUME def_volume
TYPE = S3
LOCATIONS = ("s3://<GCS bucket name specified in Step2>")
PROPERTIES
(
"enabled" = "true",
"aws.s3.region" = "us-central1",
"aws.s3.endpoint" = "https://storage.googleapis.com",
"aws.s3.access_key" = "<HMAC access key>",
"aws.s3.secret_key" = "<HMAC secret key>"
);

新しいボリュームをデフォルトとして設定します:

SET def_volume AS DEFAULT STORAGE VOLUME;

次に進むべきこと

いつでも、JDBC ドライバーや MySQL クライアントを使用して、または CelerData コンソールの SQL エディターを使用してクラスタに接続できます。詳細については、Connect to a CelerData cluster を参照してください。

また、CelerData Cloud BYOC コンソールでクラスタを表示および管理し、必要に応じて調整することもできます:

GCS の相互運用性と HMAC に関する詳細情報