Apache Cassandra:修订间差异
跳到导航
跳到搜索
此页面具有访问限制。如果您看见此消息,则说明您没有权限访问此页面。
(→cqlsh) |
(→設定) |
||
第59行: | 第59行: | ||
* <code>hints_compression</code>改用<code>LZ4Compressor</code>。 | * <code>hints_compression</code>改用<code>LZ4Compressor</code>。 | ||
* <code>internode_compression</code>改成<code>all</code>。 | * <code>internode_compression</code>改成<code>all</code>。 | ||
=== 帳號密碼 === | |||
Cassandra預設是不檢查帳號密碼的,需要修改設定: | |||
* <code>authenticator</code>改成<code>PasswordAuthenticator</code>。 | |||
* <code>authorizer</code>改成<code>CassandraAuthorizer</code>。 | |||
* <code>role_manager</code>改成<code>CassandraRoleManager</code>(似乎已經是預設)。 | |||
重啟所有節點後,然後用預設的帳號密碼(都是<code>cassandra</code>)連進cluster: | |||
<syntaxhighlight lang="bash"> | |||
cqlsh cassandra-1.example.com -u cassandra -p cassandra | |||
</syntaxhighlight> | |||
== 常用指令 == | == 常用指令 == |
2021年8月20日 (五) 19:36的版本
Apache Cassandra是一套资料库。
需求
开机就大约吃1.3GB左右,用2GB记忆体机器开机完就已经有吃到Swap了,最好是4GB记忆体,我这边是用AWS的t4g.medium
跑测试环境。
安装
先安装OpenJDK 11:
sudo apt install -y openjdk-11-jdk; sudo apt clean
再来安装Cassandra 4:
curl -L https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add -; echo "deb http://www.apache.org/dist/cassandra/debian 40x main" | sudo tee /etc/apt/sources.list.d/cassandra.list; sudo apt update; sudo apt install -y cassandra
设定
防火墙
Port | Usage | Comment |
---|---|---|
7000/tcp | Cluster communication | |
7001/tcp | Cluster communication (TLS mode) | |
7199/tcp | JMX | |
9042/tcp | Native protocol |
/etc/cassandra/cassandra.yaml
基本上一定会改的:
cluster_name
改成自己要的名称。listen_address
改成自己的IP位置(但不能是0.0.0.0
,有挡),这样外部才能连线。可以考虑直接用listen_interface
。seeds
改成第一台机器的IP位置与Port,这个参数只在第一次初始化整个Cassandra时用一次,后续的机器资讯都会存到硬碟里。如果没有用Cluster架构的话不需要改。
其他会改的:
commitlog_compression
改用LZ4Compressor
。endpoint_snitch
改成Ec2Snitch
或是Ec2MultiRegionSnitch
,如果你的Cassandra架在AWS上。hints_compression
改用LZ4Compressor
。internode_compression
改成all
。
帐号密码
Cassandra预设是不检查帐号密码的,需要修改设定:
authenticator
改成PasswordAuthenticator
。authorizer
改成CassandraAuthorizer
。role_manager
改成CassandraRoleManager
(似乎已经是预设)。
重启所有节点后,然后用预设的帐号密码(都是cassandra
)连进cluster:
cqlsh cassandra-1.example.com -u cassandra -p cassandra
常用指令
cqlsh
使用cqlsh:
cqlsh cassandra-1.example.com -u root -p password
列出所有的keyspace:
DESCRIBE keyspaces;
使用ks1
然后列出table:
USE ks1;
DESCRIBE tables;
其他指令
看目前Cluster的状态:
nodetool status