本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 cqlsh 连接到 Amazon Keyspaces
以下部分介绍如何使用 cqlsh
连接到 Amazon Keyspaces (for Apache Cassandra) 首先,您必须获取 Starfield 数字证书才能使用传输层安全性 (TLS)
加密您的连接。
有关 cqlsh 的信息,请参阅 cqlsh:CQL shell
安装并使用 cqlsh 连接到 Amazon 密钥空间(适用于 Apache Cassandra)
要安装和使用 cqlsh,必须执行以下操作:
要建立 cqlsh 与 Amazon Keyspaces 的连接以进行功能测试、照明操作和迁移,您可以使用预配置的 Docker 容器,其中包括针对 Amazon
Keyspaces 优化的所有先决条件和配置设置,并且可从 https://github.com/aws-samples/amazon-keyspaces-toolkit
安装 Python 2.7
要确定计算机上是否安装了 Python 以及安装了哪个版本,请运行以下操作。
python --version
如果您安装了 Python 2.7,则输出类似于以下内容。
Python 2.7.16
如果您需要安装 Python 2.7,请按照 Python 下载
安装和配置 CQL 客户端
Cqlsh 与 Apache Cassandra 捆绑在一起。要得到它,请按照下载和安装 Apache Cassandra
安装 Cassandra 后,运行以下命令验证是否已安装 cqlsh。
cqlsh --version
输出应该类似于以下内容。
cqlsh 5.0.1
使用 TLS 对 cqlsh
连接加密
Amazon Keyspaces 仅接受使用传输层安全性 (TLS) 的安全连接。
在使用 SSL/TLS 进行连接之前,您必须执行以下操作:
-
使用以下命令下载 Starfield 数字证书并将其保存到
目录中。path_to_file
/.cassandracurl https://certs.secureserver.net/repository/sf-class2-root.crt -O
-
创建或编辑配置文件
并添加以下行。path_to_file
/.cassandra/cqlshrc重要 当您启动
cqlsh
实用程序时,它会在您的
目录中查找名为path_to_file
/.cassandracqlshrc
的文件。 您必须修改cqlshrc
文件,以便cqlsh
可以使用 TLS 连接到 Amazon Keyspaces。[connection] port = 9142 factory = cqlshlib.ssl.ssl_transport_factory [ssl] validate = true certfile =
path_to_file
/.cassandra/sf-class2-root.crt -
使用以下命令连接到 Amazon Keyspaces。
重要 ServiceUserName
和ServicePassword
应与您按照生成服务特定凭证.中的步骤生成服务特定凭证时获得的用户名和密码相匹配。cqlsh
host
9142 -uServiceUserName
-pServicePassword
--ssl请注意,
9142
是安全端口。以下是示例。
cqlsh
cassandra.us-east-2.amazonaws.com
9142 -u"alice-at-111122223333"
-p"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
--ssl连接后,输出将类似于以下内容。当前支持的 Apache Cassandra 版本为 3.11.2。
Connected to Amazon Keyspaces at cassandra.us-east-2.amazonaws.com:9142. [cqlsh 5.0.1 | Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4] Use HELP for help. alice-at-111122223333@cqlsh>
cqlsh
连接的最佳实践
您可以配置 cqlsh COPY
设置以确保 cqlsh
遵守 Amazon Keyspaces CQL 查询吞吐量调整 准则。
修改配置文件
中 COPY FROM 选项的默认值,并添加以下行。
path_to_file
/.cassandra/cqlshrc
[copy-from] CHUNKSIZE=50
CHUNKSIZE
的此设置可以很好地开始使用新创建的表,并且应该进行更改以支持更大的工作负载。有关如何优化 Amazon Keyspaces 的配置设置的更多信息,请参阅 AWS
数据库博客上的使用 cqlsh 将数据加载到 Amazon Keyspaces