Edge for Private Cloud v4.19.01
デフォルトでは、Cassandra は認証を有効にせずインストールされます。つまり、誰でも Cassandra にアクセスできます。Edge のインストール後、またはインストール プロセスの一環として認証を有効にできます。
Cassandra で認証を有効にする場合、次のデフォルトの認証情報が使用されます。
- ユーザー名 = 'cassandra'
- パスワード = 'cassandra'
このアカウントを使用するか、このアカウントで別のパスワードを設定するか、Cassandra の新しいユーザーを作成できます。ユーザーの追加、削除、変更には Cassandra の CREATE/ALTER/DROP USER ステートメントを使用します。
詳細については、Cassandra SQL シェルコマンドをご覧ください。
インストール中に Cassandra 認証を有効にする
インストール時に Cassandra 認証を有効にできます。ただし、Cassandra のインストール時に認証を有効にすることはできますが、デフォルトのユーザー名とパスワードは変更できません。その手順は、Cassandra のインストール後に手動で実行する必要があります。
インストール時に Cassandra 認証を有効にするには、すべての Cassandra ノードの構成ファイルに CASS_AUTH
プロパティを追加します。
CASS_AUTH=y # The default value is n.
Cassandra にアクセスする Edge コンポーネントは次のとおりです。
- 管理サーバー
- Message Processor
- ルーター
- Qpid サーバー
- Postgres サーバー
したがって、これらのコンポーネントをインストールするときに、構成ファイルで次のプロパティを設定して Cassandra の認証情報を指定する必要があります。
CASS_USERNAME=cassandra CASS_PASSWORD=cassandra
Cassandra の認証情報は、Cassandra のインストール後に変更できます。ただし、Management Server、Message Processor、Router、Qpid サーバー、Postgres サーバーがすでにインストールされている場合は、これらのコンポーネントを更新して新しい認証情報を使用する必要があります。
Cassandra のインストール後に Cassandra の認証情報を変更するには:
cqlsh
ツールとデフォルトの認証情報を使用して、任意の Cassandra ノードにログインします。1 つのノードでパスワードを変更するだけで、リング内のすべての Cassandra ノードにブロードキャストされます。/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
ここで
- cassIP は Cassandra ノードの IP アドレスです。
- 9042 はデフォルトの Cassandra ポートです。
- デフォルトのユーザーは
cassandra
です。 - デフォルトのパスワードは
cassandra
です。以前にパスワードを変更した場合は、現在のパスワードを使用してください。
cqlsh>
プロンプトで次のコマンドを実行して、パスワードを更新します。ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
- cqlsh ツールを終了します。
exit
- Management Server、Message Processor、Router、Qpid サーバー、Postgres サーバーをまだインストールしていない場合は、構成ファイルで次のプロパティを設定してそれらのコンポーネントをインストールします。
CASS_USERNAME=cassandra CASS_PASSWORD=NEW_PASSWORD
- Management Server、Message Processor、Router、Qpid サーバー、Postgres サーバーをすでにインストールしている場合は、Edge パスワードをリセットするの手順に従って、これらのコンポーネントで新しいパスワードが使用されるようにします。
インストール後に Cassandra 認証を有効にする
認証を有効にするには:
- Cassandra に接続するすべての Edge コンポーネントを Cassandra のユーザー名とパスワードで更新します。
- すべての Cassandra ノードで認証を有効にします。
- いずれかのノードに Cassandra のユーザー名とパスワードを設定します。認証情報の変更は 1 つの Cassandra ノードだけで行い、その変更をリング内のすべての Cassandra ノードにブロードキャストします。
Cassandra と通信するすべての Edge コンポーネントに新しい認証情報を設定する手順は次のとおりです。この手順は、Cassandra の認証情報を実際に更新する前に行ってください。
- Management Server ノードで、次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u cassandra_username -p cassandra_password
あるいは、次のように、新しいユーザー名とパスワードの入ったファイルをコマンドに渡すこともできます。
apigee-service edge-management-server store_cassandra_credentials -f configFile
ここで、configFile には次の設定が含まれます。
CASS_USERNAME=cassandra_username # Default is cassandra CASS_PASSWORD=cassandra_password # Default is cassandra
このコマンドは、自動的に Management Server を再起動します。
- 各サービスで、ステップ 1 を繰り返します。
- すべての Message Processor
- すべての Router
- すべての Qpid サーバー(edge-qpid-server)
- Postgres サーバー(edge-postgres-server)
各サービスに対してステップ 1 を繰り返すとき、上記のコマンドの
edge-management-server
を適切なサービス名に置き換えます。たとえば、Router サービスに対してステップ 1 を行うときは、次のコマンドを使用します。/opt/apigee/apigee-service/bin/apigee-service edge-router store_cassandra_credentials -u cassandra -p cassandra
次の手順に従い、Cassandra 認証を有効にしてユーザー名とパスワードを設定します。
- 1 つ目の Cassandra ノードにログインします。
- 次のコマンドを実行します。
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra enable_cassandra_authentication -e y
このコマンドは、認証を有効にして Cassandra を再起動します。
- すべての Cassandra ノードでステップ 1 と 2 を繰り返します。
cqlsh
ツールとデフォルトの認証情報を使用して、任意の Cassandra ノードにログインします。1 つの Cassandra ノードでパスワードを変更するだけで、リング内のすべての Cassandra ノードにブロードキャストされます。/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
場所
- cassIP は Cassandra ノードの IP アドレスです。
- 9042 は Cassandra ポートです。
- デフォルトのユーザーは
cassandra
です。 - デフォルトのパスワードは
cassandra
です。以前にパスワードを変更した場合は、現在のパスワードを使用してください。
cqlsh>
プロンプトで次のコマンドを実行して、パスワードを更新します。ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
cqlsh>
プロンプトに対して次のコマンドを実行して、キースペースを常に利用できるようにします。 単一のデータセンターの場合:ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3'};
2 つのデータセンターの場合:ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3', 'dc-2': '3'};
cqlsh
ツールを終了します。exit
nodetool repair
を実行して、変更がすべての Cassandra ノードに反映されていることを確認します。/opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw password] repair system_auth
ユーザー名とパスワードを渡す必要があるのは、Cassandra 用に JMX 認証を有効にした場合のみです。