Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

cqlsh を使用した Amazon Keyspaces への接続

フォーカスモード

このページの内容

cqlsh を使用した Amazon Keyspaces への接続 - Amazon Keyspaces (Apache Cassandra 向け)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

cqlsh で Amazon Keyspaces に接続するには、cqlsh-expansion を使用します。このツールキットには、cqlsh や Apache Cassandra との完全な互換性を維持して、Amazon Keyspaces 用に事前設定した一般的な Apache Cassandra ツールなどのヘルパーが含まれています。cqlsh-expansion は、SigV4 認証プラグインを統合しているため、ユーザー名とパスワードを使用する代わりに、IAM アクセスキーで接続できます。Amazon Keyspaces はサーバーレスなので、cqlsh スクリプトをインストールするだけで接続でき、Apache Cassandraディストリビューション一式をインストールする必要はありません。この軽量インストールパッケージには、cqlsh-expansion と、Python をサポートするプラットフォームであればどのプラットフォームにもインストールできるクラシック cqlsh スクリプトが含まれています。

注記

Murmur3Partitioner は、Amazon Keyspaces と cqlsh-expansion に推奨されるパーティショナーです。cqlsh-expansion は Amazon Keyspaces DefaultPartitioner に対応していません。詳細については、「Amazon Keyspaces でのパーティショナーの操作」を参照してください。

cqlsh」の詳細については、cqlsh: CQL シェル」 を参照してください。

cqlsh-expansion による Amazon Keyspaces までの接続

cqlsh-expansion のインストールと設定
  1. cqlsh-expansion Python パッケージをインストールするには、pip コマンドを実行します。これにより、pip install と依存関係のリストを保存したファイルとともに、cqlsh-expansion スクリプトがマシンにインストールされます。--user flag は、プラットフォームの Python ユーザーインストールディレクトリを使用するように pip に指示します。Unix ベースのシステムでは、それが ~/.local/ ディレクトリになるはずです。

    cqlsh-expansion をインストールするには Python 3 が必要です。使用している Python のバージョンを確認するには、Python --version を使用してください。インストールするには、次のコマンドを実行します。

    python3 -m pip install --user cqlsh-expansion

    出力は次のようになります。

    Collecting cqlsh-expansion Downloading cqlsh_expansion-0.9.6-py3-none-any.whl (153 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 153.7/153.7 KB 3.3 MB/s eta 0:00:00 Collecting cassandra-driver Downloading cassandra_driver-3.28.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (19.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.1/19.1 MB 44.5 MB/s eta 0:00:00 Requirement already satisfied: six>=1.12.0 in /usr/lib/python3/dist-packages (from cqlsh-expansion) (1.16.0) Collecting boto3 Downloading boto3-1.29.2-py3-none-any.whl (135 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 135.8/135.8 KB 17.2 MB/s eta 0:00:00 Collecting cassandra-sigv4>=4.0.2 Downloading cassandra_sigv4-4.0.2-py2.py3-none-any.whl (9.8 kB) Collecting botocore<1.33.0,>=1.32.2 Downloading botocore-1.32.2-py3-none-any.whl (11.4 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.4/11.4 MB 60.9 MB/s eta 0:00:00 Collecting s3transfer<0.8.0,>=0.7.0 Downloading s3transfer-0.7.0-py3-none-any.whl (79 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 79.8/79.8 KB 13.1 MB/s eta 0:00:00 Collecting jmespath<2.0.0,>=0.7.1 Downloading jmespath-1.0.1-py3-none-any.whl (20 kB) Collecting geomet<0.3,>=0.1 Downloading geomet-0.2.1.post1-py3-none-any.whl (18 kB) Collecting python-dateutil<3.0.0,>=2.1 Downloading python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 247.7/247.7 KB 33.1 MB/s eta 0:00:00 Requirement already satisfied: urllib3<2.1,>=1.25.4 in /usr/lib/python3/dist-packages (from botocore<1.33.0,>=1.32.2->boto3->cqlsh-expansion) (1.26.5) Requirement already satisfied: click in /usr/lib/python3/dist-packages (from geomet<0.3,>=0.1->cassandra-driver->cqlsh-expansion) (8.0.3) Installing collected packages: python-dateutil, jmespath, geomet, cassandra-driver, botocore, s3transfer, boto3, cassandra-sigv4, cqlsh-expansion WARNING: The script geomet is installed in '/home/ubuntu/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location. WARNING: The scripts cqlsh, cqlsh-expansion and cqlsh-expansion.init are installed in '/home/ubuntu/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location. Successfully installed boto3-1.29.2 botocore-1.32.2 cassandra-driver-3.28.0 cassandra-sigv4-4.0.2 cqlsh-expansion-0.9.6 geomet-0.2.1.post1 jmespath-1.0.1 python-dateutil-2.8.2 s3transfer-0.7.0

    インストールディレクトリが PATH にない場合は、オペレーティングシステムの指示に従って追加する必要があります。以下は、Ubuntu Linux の場合の一例です。

    export PATH="$PATH:/home/ubuntu/.local/bin"

    パッケージがインストールされたことを確認するためには、次のコマンドを実行します。

    cqlsh-expansion --version

    出力は次のようになります。

    cqlsh 6.1.0
  2. cqlsh-expansion を設定するには、インストール後のスクリプトを実行して次の手順を自動的に完了させることができます。

    1. .cassandra ディレクトリがなければ、ユーザーのホームディレクトリに作成します。

    2. 事前設定済みの cqlshrc 設定ファイルを .cassandra ディレクトリにコピーします。

    3. Starfield デジタル証明書を .cassandra ディレクトリにコピーします。Amazon Keyspaces では、この証明書で、Transport Layer Security (TLS) との安全な接続を設定します。転送時の暗号化では、Amazon Keyspaces との間で送受信するときにデータを暗号化することによって、データ保護のレイヤーを追加します。

    このスクリプトを最初に確認するため、post_install.py にある Github リポジトリからスクリプトにアクセスします。

    スクリプトを使用するには、次のコマンドを実行します。

    cqlsh-expansion.init
    注記

    ポストインストールスクリプトによって作成されるディレクトリとファイルは、pip uninstallcqlsh-expansion をアンインストールしても削除されないため、手動で削除する必要があります。

cqlsh-expansion を使用した Amazon Keyspaces への接続
  1. AWS リージョン を設定して、ユーザー環境変数として追加します。

    デフォルトリージョンを Unix ベースシステムの環境変数として追加するには、次のコマンドを実行します。この例では、米国東部 (バージニア北部) を使用します

    export AWS_DEFAULT_REGION=us-east-1

    他のプラットフォーム用など、環境変数の設定方法の詳細については、「環境変数を設定する方法」を参照してください。

  2. サービスエンドポイントを検索します。

    リージョンに適したサービスエンドポイントを選択します。Amazon Keyspaces で使用可能なエンドポイントを確認するには、「Amazon Keyspaces のサービスエンドポイント」を参照してください。この例では、cassandra.us-east-1.amazonaws.com エンドポイントを使用します。

  3. 認証方法を設定します。

    IAM アクセスキー (IAM ユーザー、ロール、フェデレーテッドアイデンティティ) を使用した接続が、セキュリティ強化のための推奨方法です。

    IAM アクセスキーで続する前に、以下の手順を完了してください。

    1. IAM ユーザーを作成するか、ベストプラクティスに従って IAM ユーザーが引き受けることができる IAM ロールを作成します。IAM アクセスキーの作成方法の詳細については、「Amazon Keyspaces の AWS 認証情報の作成と設定」を参照してください。

    2. Amazon Keyspaces に少なくとも読み取り専用アクセス権限を与えるロール(または IAM ユーザー)を作成します。IAM ユーザーまたはロールが Amazon Keyspaces に接続するために必要な権限の詳細については、「Amazon Keyspaces テーブルへのアクセス」を参照してください。

    3. 次の例のように、IAM ユーザーのアクセスキーをユーザーの環境変数に追加します。

      export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

      他のプラットフォーム用など、環境変数の設定方法の詳細については、「環境変数を設定する方法」を参照してください。

      注記

      Amazon EC2 インスタンスから接続する場合は、そのインスタンスから Amazon Keyspaces へのトラフィックを許可するアウトバウンドルールをセキュリティグループで設定する必要もあります。EC2 アウトバウンドルールの表示方法と編集方法の詳細については、「Amazon EC2 ユーザーガイド」の「セキュリティグループへのルールの追加」を参照してください。

  4. cqlsh-expansion と SigV4 認証で Amazon Keyspaces に接続

    cqlsh-expansion を使用して Amazon Keyspaces に接続するには、次のコマンドを使用します。必ずサービスエンドポイントを、リージョンに適したエンドポイントに置き換えてください。

    cqlsh-expansion cassandra.us-east-1.amazonaws.com 9142 --ssl

    正常に接続されると次の例のような出力が表示されます。

    Connected to Amazon Keyspaces at cassandra.us-east-1.amazonaws.com:9142 [cqlsh 6.1.0 | Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4] Use HELP for help. cqlsh current consistency level is ONE. cqlsh>

    接続エラーが発生した場合は、「cqlsh を使用して Amazon Keyspaces に接続できない」でトラブルシューティング情報をご確認ください。

    • サービス固有の認証情報で Amazon Keyspaces に接続します。

      Cassandra が認証に使用する従来のユーザー名とパスワードの組み合わせで接続するには、Amazon Keyspaces にプログラムによってアクセスするためのサービス固有の認証情報を作成する にあるように、まず Amazon Keyspaces 用のサービス固有の認証情報を作成する必要があります。また、Amazon Keyspaces にアクセスするための権限をそのユーザーに与える必要があります。詳細については、「Amazon Keyspaces テーブルへのアクセス」を参照してください。

      ユーザー用にサービス固有の認証情報と権限を作成したら、cqlshrc ファイルを更新します。通常、このファイルはユーザーディレクトリパス ~/.cassandra/ にあります。cqlshrc ファイル内の Cassandra [authentication] セクションに移動し、以下の例のように「;」文字を使用して [auth_provider] の下にある SigV4 モジュールとクラスをコメントアウトします。

      [auth_provider] ; module = cassandra_sigv4.auth ; classname = SigV4AuthProvider

      cqlshrc ファイルを更新すると、次のコマンドで Amazon Keyspaces に接続できます。サービス固有の認証情報で Amazon Keyspaces に接続できます。

      cqlsh-expansion cassandra.us-east-1.amazonaws.com 9142 -u myUserName -p myPassword --ssl
クリーンアップ
  • cqlsh-expansion パッケージを削除するには、pip uninstall コマンドを使用します。

    pip3 uninstall cqlsh-expansion

    pip3 uninstall コマンドでは、インストール後のスクリプトによって作成されたディレクトリと関連ファイルは削除されません。ポストインストールスクリプトによって作成されたフォルダとファイルを削除するには、.cassandra ディレクトリを削除します。

TLS の cqlsh 接続を手動で設定する方法

Amazon Keyspaces では、Transport Layer Security (TLS) を使用した安全な接続しか許容されません。cqlsh-expansion ユーティリティを使用できます。これで、証明書を自動的にダウンロードし、事前設定済みの cqlshrc 設定ファイルをインストールします。詳細については、このページの「cqlsh-expansion による Amazon Keyspaces までの接続」を参照してください。

証明書をダウンロードして手動で接続を設定する場合は、以下の手順に従います。

  1. 次のコマンドを使用して Starfield デジタル証明書をダウンロードし、sf-class2-root.crt をローカルまたはホームディレクトリ内に保存します。

    curl https://certs.secureserver.net/repository/sf-class2-root.crt -O
    注記

    Amazon デジタル証明書を使用して Amazon Keyspaces に接続することもできます。クライアントが Amazon Keyspaces に正常に接続されている場合は、引き続き Amazon Keyspaces に接続できます。Starfield 証明書は、古い認定権限を使用しているクライアントに対して追加の下位互換性を提供するものです。

  2. Cassandra ホームディレクトリにある cqlshrc 設定ファイル(${HOME}/.cassandra/cqlshrc など)を開いて、次の行を追加します。

    [connection] port = 9142 factory = cqlshlib.ssl.ssl_transport_factory [ssl] validate = true certfile = path_to_file/sf-class2-root.crt
プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.