本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS CloudShell 是一个已经事先完成身份验证的浏览器式 Shell,您可以直接从AWS Management Console启动它。您可以使用您的首选 shell(Bash、PowerShell 或 Z shell),针对 AWS 服务运行 AWS CLI 命令。要通过 cqlsh
使用 Amazon Keyspaces,您必须安装 cqlsh-expansion
。有关 cqlsh-expansion
安装说明,请参阅使用 cqlsh-expansion 连接 Amazon Keyspaces。
您可以 从 AWS Management Console 启动 AWS CloudShell,用于登录控制台的 AWS 凭证将在新的 Shell 会话中自动可用。通过这种对 AWS CloudShell 用户进行预身份验证,使您可在使用 cqlsh
或 AWS CLI 版本 2(在 Shell 的计算环境中预装)与 Amazon Keyspaces 等 AWS 服务进行交互时跳过凭证配置步骤。
获取 AWS CloudShell 的 IAM 权限
使用 AWS Identity and Access Management 提供的访问管理资源,管理员可以向 IAM 用户授予权限,使其能够访问 AWS CloudShell 并使用环境的功能。
管理员要向用户授予访问权限,最快捷的方法是通过 AWS 托管式策略。AWS 托管式策略 是由 AWS 创建和管理的独立策略。可以将以下适用于 CloudShell 的 AWS 托管式策略附加到 IAM 身份:
-
AWSCloudShellFullAccess
:授予使用 AWS CloudShell 的权限,并具有对所有功能的完全访问权限。
如果要限制 IAM 用户可以使用 AWS CloudShell 执行的操作范围,则可以 AWSCloudShellFullAccess
托管式策略为模板创建使用的定义策略。要详细了解如何限制用户可在 CloudShell 中使用的操作,请参阅《AWS CloudShell 用户指南》中的 Managing AWS CloudShell access and usage with IAM policies。
注意
您的 IAM 身份还需要一项策略,来授予调用 Amazon Keyspaces 的权限。
您可以使用 AWS 托管式策略为您的 IAM 身份授予访问 Amazon Keyspaces 的权限,也可以着手使用托管式策略作为模板,并移除不需要的权限。您还可以限制访问特定键空间和表来创建自定义策略。以下适用于 Amazon Keyspaces 的托管式策略可以附加到 IAM 身份:
AmazonKeyspacesFullAccess – 此策略授予使用 Amazon Keyspaces 的权限,以及对全部特征的完全访问权限。
有关托管式策略中定义的操作的详细说明,请参阅AWS Amazon Keyspaces 的托管策略。
有关如何限制操作或者限制访问 Amazon Keyspaces 中特定资源的信息,请参阅Amazon Keyspaces 是如何使用的 IAM。
使用 AWS CloudShell 与 Amazon Keyspaces 进行交互
从 AWS Management Console启动 AWS CloudShell 后,您可以立即开始使用 cqlsh
或命令行界面与 Amazon Keyspaces 进行交互。如果您尚未安装 cqlsh-expansion
,请参阅使用 cqlsh-expansion 连接 Amazon Keyspaces 来了解详细步骤。
注意
在 AWS CloudShell 中使用 cqlsh-expansion
时,由于已经在 Shell 中进行了身份验证,因此进行调用之前无需配置凭证。
连接到 Amazon Keyspaces 并创建新的键空间。然后从系统表中读取以确认键空间是使用 AWS CloudShell 创建的
-
在 AWS Management Console 中,您可以选择导航栏中提供的下列可用选项来启动 CloudShell:
-
选择 CloudShell 图标。
-
首先在搜索框中键入“cloudshell”,然后选择 CloudShell 选项。
-
-
您可以使用以下命令建立与 Amazon Keyspaces 的连接。确保将
cassandra.us-east-1.amazonaws.com
替换为您所在区域的正确端点。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>
-
使用名称
mykeyspace
创建新的键空间。您可以使用以下命令来执行此操作。CREATE KEYSPACE mykeyspace WITH REPLICATION = {'class': 'SingleRegionStrategy'};
-
要确认键空间已创建,您可以使用以下命令从系统表中读取。
SELECT * FROM system_schema_mcs.keyspaces WHERE keyspace_name = 'mykeyspace';
如果调用成功,命令行将显示来自服务的响应,输出与以下类似:
keyspace_name | durable_writes | replication ----------------+----------------+------------------------------------------------------------------------------------- mykeyspace | True | {'class': 'org.apache.cassandra.locator.SimpleStrategy', 'replication_factor': '3'} (1 rows)