クイックスタート: Azure portal から Azure Managed Instance for Apache Cassandra クラスターを作成する

Azure Managed Instance for Apache Cassandra では、マネージド オープンソースの Apache Cassandra データセンターのデプロイとスケーリングの自動操作が提供されます。これにより、ハイブリッド シナリオが推進され、継続的なメンテナンスが削減されます。

このクイックスタートでは、Azure portal を使用して、Azure Managed Instance for Apache Cassandra クラスターを作成する方法について説明します。

前提条件

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

マネージド インスタンス クラスターを作成する

  1. Azure portal にサインインします。

  2. 検索バーで、Managed Instance for Apache Cassandra を検索し、結果を選択します。

    Azure SQL Managed Instance for Apache Cassandra の検索のスクリーンショット。

  3. [Create Managed Instance for Apache Cassandra cluster](Managed Instance for Apache Cassandra クラスターの作成) ボタンを選択します。

    クラスターを作成する。

  4. [Create Managed Instance for Apache Cassandra](Managed Instance for Apache Cassandra の作成) ウィンドウで、次の詳細を入力します。

    • [サブスクリプション] - ドロップダウン リストから Azure サブスクリプションを選びます。
    • [リソース グループ] - 新しいリソース グループを作成するか、既存のものを使用するかを指定します。 リソース グループは、Azure ソリューションの関連するリソースを保持するコンテナーです。 詳細については、Azure リソース グループの概要に関する記事を参照してください。
    • [クラスター名] - ご自分のクラスターの名前を入力します。
    • [場所] - ご自分のクラスターがデプロイされる場所。
    • [Initial Cassandra admin password](最初の Cassandra 管理者パスワード) - クラスターの作成に使用されるパスワード。
    • [Confirm Cassandra admin password](Cassandra 管理者パスワードの確認) - パスワードを再入力します。
    • 仮想ネットワーク - 既存の仮想ネットワークとサブネットを選択するか、新しく新規作成します。
    • ロールの割り当て - 仮想ネットワークでは、管理対象の Cassandra クラスターをデプロイできるようにするために特別なアクセス許可が必要です。 新しい仮想ネットワークを作成する場合、またはアクセス許可を適用せずに既存の仮想ネットワークを使用する場合、このチェックボックスをオンのままにします。 Azure SQL Managed Instance Cassandra クラスターが既にデプロイされている仮想ネットワークを使用する場合、このオプションをオフにします。

    クラスターの作成フォームに入力する。

    注意

    Azure Managed Instance for Apache Cassandra をデプロイするには、インターネットへのアクセスが必要です。 インターネットへのアクセスが制限されている環境では、デプロイは失敗します。 Managed Cassandra が適切に機能するために必要な、次の重要な Azure サービスへのアクセスが VNet 内でブロックされていないことを確認します。 詳細については、「必要なアウトバウンド ネットワーク規則」を参照してください。

    • Azure Storage
    • Azure KeyVault
    • Azure 仮想マシン スケール セット
    • Azure 監視
    • Azure Active Directory
    • Azure Security
  5. 次に、 [データ センター] タブを選択します。

  6. 次の詳細を入力します。

    • [データセンター名] - テキスト フィールドにデータセンター名を入力します。
    • [可用性ゾーン] - 可用性ゾーンを有効にする場合、このチェックボックスをオンにします。
    • [SKU サイズ] - 使用可能な仮想マシン SKU サイズから選択します。
    • いいえ。 [ディスク数] - 各 Cassandra ノードに接続する p30 ディスクの数を選びます。
    • いいえ。 [ノード数] - このデータセンターにデプロイされる Cassandra ノードの数を選びます。

    概要を確認し、データセンターを作成します。

    警告

    可用性ゾーンは一部のリージョンでサポートされていません。 可用性ゾーンがサポートされていないリージョンを選択すると、デプロイは失敗します。 サポートされているリージョンについては、こちらを参照してください。 可用性ゾーンの正常なデプロイは、特定のリージョン内のすべてのゾーンでコンピューティング リソースが使用可能であることにも左右されます。 選択した SKU、または容量が一部のゾーンで使用できない場合、デプロイは失敗する可能性があります。

  7. 次に、 [確認と作成][作成] の順にクリックします。

    Note

    クラスターの作成には、最大 15 分かかることがあります。

    概要を確認して、クラスターを作成する。

  8. デプロイが完了したら、リソース グループを調べて、新しく作成されたマネージド インスタンス クラスターを確認します。

    クラスターが作成された後の [概要] ページ。

  9. クラスター ノードを閲覧するには、クラスター リソースに移動し、 [データ センター] ウィンドウを開いて確認します。

    データセンター ノードのスクリーンショット。

データセンターのスケーリング

  1. 1 つのデータ センターを使用してクラスターをデプロイしたので、データ センターを強調表示し、Scale ボタンを選択して、ノードをスケールアップまたはスケールダウンできます。

    データセンター ノードのスケーリングのスクリーンショット。

  2. 次に、スライダーを目的の数値に移動するか、単に値を編集します。 終わったら、Scale を押します。

    データセンター ノードの数の選択のスクリーンショット。

    Note

    ノードのスケーリングにかかる時間はさまざまな要因によって異なり、数分かかる場合もあります。 スケール操作が完了したことを Azure から通知された場合、これは、すべてのノードが Cassandra リングに参加したことを意味するわけではありません。 ノードは、すべてが "正常" の状態を示し、データセンターの状態が "成功" と表示されているときに完全にコミッションされます。

データセンターの追加

  1. 別のデータセンターを追加するには、[データ センター] ウィンドウで [追加] ボタンをクリックします。

    データセンターの追加のスクリーンショット。

    警告

    別のリージョンにデータセンターを追加する場合は、別の仮想ネットワークを選択する必要があります。 また、この仮想ネットワークが、上記で作成したプライマリ リージョンの仮想ネットワーク (およびマネージド インスタンス クラスター内のデータ センターをホストしているその他の仮想ネットワーク) に接続されていることを確認する必要があります。 この記事では、Azure portal を使用して仮想ネットワークをピアリングする方法について説明します。 また、以下の CLI コマンドを使用して、管理対象インスタンス・クラスターのデプロイを試みる前に、仮想ネットワークに適切な役割が適用されていることを確認する必要があります。

        az role assignment create \
        --assignee a232010e-820c-4083-83bb-3ace5fc29d0b \
        --role 4d97b98b-1d4f-4787-a291-c67834d212e7 \
        --scope /subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Network/virtualNetworks/<vnetName>
    
  2. 適切なフィールドに入力します。

    • [データセンター名] - ドロップダウン リストから Azure サブスクリプションを選択します。
    • 可用性ゾーンン - このデータセンターで可用性ゾーンを有効にする場合は、このチェックボックスをオンにします。
    • 場所 - ご自分のクラスターがデプロイされる場所。
    • [SKU サイズ] - 使用可能な仮想マシン SKU サイズから選択します。
    • いいえ。 [ディスク数] - 各 Cassandra ノードに接続する p30 ディスクの数を選びます。
    • いいえ。 [ノード数] - このデータセンターにデプロイされる Cassandra ノードの数を選びます。
    • 仮想ネットワーク - 既存の仮想ネットワークとサブネットを選択します。

    データセンターの追加。

    警告

    データセンターを追加するときに新しい仮想ネットワークの作成を許可していないことに注意してください。 既存の仮想ネットワークを選択し、前述のように、データセンターがデプロイされるターゲット サブネット間に接続があることを確認する必要があります。 また、デプロイを許可するには、適切なロールを VNet に適用する必要もあります (上記を参照)。

  3. データセンターがデプロイされると、すべてのデータセンター情報を [データセンター] ウィンドウに表示できるようになります。

    クラスター リソースを表示する。

Cassandra の構成を更新する

このサービスを使用すると、ポータルまたは CLI コマンドを使用して、データセンターの Cassandra YAML 構成を更新できます。 ポータルで設定を更新するには:

  1. [設定] で Cassandra Configuration を見つけます。 構成を変更するデータ センターを強調表示し、[更新] をクリックします。

    構成を更新するデータ センターの選択のスクリーンショット。

  2. 開いたウィンドウで、次に示すように YAML 形式でフィールド名を入力します。 次に [更新] をクリックします。

    データ センターの Cassandra 構成の更新のスクリーンショット。

  3. 更新が完了すると、オーバーライドされた値が Cassandra Configuration ウィンドウに表示されます。

    更新された Cassandra 構成のスクリーンショット。

    Note

    オーバーライドされた Cassandra 構成値のみがポータルに表示されます。

    重要

    指定した Cassandra yaml 設定が、デプロイした Cassandra のバージョンに適していることを確認します。 Cassandra v3.11 の設定については、こちらを参照してください。v4.0 については、こちらを参照してください。 次の YAML 設定は更新できません

    • cluster_name
    • seed_provider
    • initial_token
    • autobootstrap
    • client_ecncryption_options
    • server_encryption_options
    • transparent_data_encryption_options
    • audit_logging_options
    • 認証子 (authenticator)
    • authorizer
    • role_manager
    • storage_port
    • ssl_storage_port
    • native_transport_port
    • native_transport_port_ssl
    • listen_address
    • listen_interface
    • broadcast_address
    • hints_directory
    • data_file_directories
    • commitlog_directory
    • cdc_raw_directory
    • saved_caches_directory

トラブルシューティング

Azure CLI を使用して Virtual Network にアクセス許可を適用するときにエラー ("Cannot find user or service principal in graph database for 'e5007d2c-4b13-4a74-9b6a-605d99f03501' ('e5007d2c-4b13-4a74-9b6a-605d99f03501' に対するユーザーまたはサービス プリンシパルがグラフ データベース内で見つかりません) " など) が発生した場合、Azure portal から同じアクセス許可を手動で適用できます。 この方法についてはこちらを参照してください。

注意

Azure Cosmos DB のロールの割り当ては、デプロイの目的にのみ使用されます。 Azure Managed Instance for Apache Cassandra には、Azure Cosmos DB に対するバックエンドの依存関係はありません。

クラスターに接続する

Azure Managed Instance for Apache Cassandra では、パブリック IP アドレスを持つノードが作成されないため、新しく作成された Cassandra クラスターに接続するには、VNet 内に別のリソースを作成する必要があります。 これは、アプリケーション、または Apache のオープンソース クエリ ツール CQLSH がインストールされている仮想マシンにすることができます。 テンプレートを使用して、Ubuntu 仮想マシンをデプロイできます。

CQLSH からの接続

仮想マシンがデプロイされたら、SSH を使用してマシンに接続し、次のコマンドを使用して CQLSH をインストールします。

# Install default-jre and default-jdk
sudo apt update
sudo apt install openjdk-8-jdk openjdk-8-jre

# Install the Cassandra libraries in order to get CQLSH:
echo "deb http://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
curl https://downloads.apache.org/cassandra/KEYS | sudo apt-key add -
sudo apt-get update
sudo apt-get install cassandra

# Export the SSL variables:
export SSL_VERSION=TLSv1_2
export SSL_VALIDATE=false

# Connect to CQLSH (replace <IP> with the private IP addresses of a node in your Datacenter):
host=("<IP>")
initial_admin_password="Password provided when creating the cluster"
cqlsh $host 9042 -u cassandra -p $initial_admin_password --ssl

アプリケーションからの接続

CQLSH と同様に、サポートされている Apache Cassandra クライアント ドライバー のいずれかを使用してアプリケーションから接続するには、SSL を有効にする必要があります。 Java.NET を使用した Azure Managed Instance for Apache Cassandra への接続についてはサンプルを参照してください。 Java では、予測実行ポリシーを有効にすることを強くお勧めします。 このしくみとポリシーを有効にする方法を示すデモについては、こちらを参照してください。

ローカルに保持されている証明書のコピーを保存して検証するか、クラスター ノードの IP アドレスを適切なドメインにマップしない限り、証明書の検証は機能しないため、証明書の検証を無効にすることをお勧めします。 アプリケーションに対して SSL 証明書の検証を行うことを義務付ける内部ポリシーがある場合は、次のいずれかの方法でこれを容易に実施できます。

  • 証明書をローカルに保存して検証する。 証明書は Digicert で署名されています - こちらを参照してください。 これを常に最新の状態に保つ必要があります。
  • 各ノードの hosts ファイルに 10.0.1.5 host1.managedcassandra.cosmos.azure.com のようなエントリを追加する。 この方法を採用する場合は、ノードをスケール アップするたびに新しいエントリを追加する必要もあります。

リソースをクリーンアップする

このマネージド インスタンス クラスターを引き続き使用しない場合は、次の手順でそれを削除します。

  1. Azure portal の左側にあるメニューで、 [リソース グループ] を選択します。
  2. 一覧から、このクイック スタートで作成したリソース グループを選択します。
  3. リソース グループの [概要] ペインで、 [リソース グループの削除] を選択します。
  4. 次のウィンドウで、削除するリソース グループの名前を入力し、[削除] を選択します。

次のステップ

このクイックスタートでは、Azure portal を使用して、Azure Managed Instance for Apache Cassandra クラスターを作成する方法について学習しました。 これで、クラスターの操作を開始できます。