Aerospike配置

database

vi /etc/aerospike/aerospike.conf

service {} #调整参数和进程所有者

network { #用于配置集群内和应用程序节点通讯

service {} #工具/应用程序通信协议,应用、工具、远程XDR通过此端口访问AS集群

fabric {} #集群内部通讯、备份等操作用此端口

info {} #管理员telnet控制台协议

heartbeat {} #集群心跳端口,用来构建和维护集群

}

security { #(可选,仅企业版)启用集群上的ACL

enable-security true

}

logging {} #记录配置

xdr { #(可选,仅企业版)配置交叉数据中心复制

datacenter <name> {} #远程数据中心节点列表

}

namespace <name> { #定义名称空间记录策略和存储引擎

storage {} #配置持久性或缺乏持久性

set {} #(可选)设置特定的记录策略

}

配置步骤:

配置网络服务和心跳子上下文

配置命名空间

配置日志记录和日志轮换

(可选)配置安全性

(可选)配置机架感知

(可选)配置跨数据中心复制

配置样例

service {

user root

group root

paxos-single-replica-limit 1 # 副本数自动减少到1的节点数。

pidfile /var/run/aerospike/asd.pid

service-threads 20 # 4.7+应为vCPU数量的5倍,并且至少有一个SSD名称空间,否则为vCPU数量

proto-fd-max 15000

node-id-interface eth1

}

logging {

# 日志文件必须是绝对路径,不会自动建目录,需要已有的目录

file /var/log/aerospike.log {

context any info

}

}

network {

service {

address any #服务正在侦听的NIC的IP。

port 3000 #服务正在监听的端口。

access-address 192.168.1.100 #访问该服务的客户端的IP地址。

}

fabric {

address any

port 3001 # 集群内通信端口(迁移,复制等)

}

info {

address any

port 3003 #纯文本telnet管理端口。

}

# 基于UDP的模式

heartbeat {

mode multicast #使用多播发送心跳

address 239.1.99.2 #公网组播地址

port 9918 #组播端口

address 192.168.1.100 #将本机加入集群,用于发送心跳和绑定交换矩阵端口的NIC的IP

interval 150 #心跳之间的毫秒数

timeout 10 #在节点超时之前要等待的心跳间隔数

}

#基于TCP的模式

# heartbeat {

# mode mesh # 使用网格(单播)协议发送心跳

# address 192.168.1.100 # 该节点正在侦听心跳的NIC的IP

# port 3002 # 该节点正在侦听心跳的端口

# mesh-seed-address-port 192.168.1.100 3002 # 集群中种子节点的IP地址

# mesh-seed-address-port 192.168.1.101 3002 # 集群中种子节点的IP地址

# interval 150 # 心跳之间的毫秒数

# timeout 20 # 使节点超时之前要等待的心跳间隔数

# }

}

#纯内存数据储存方案

namespace test_memory {

replication-factor 2

memory-size 4G

default-ttl 30d # 30天,使用0永不过期

storage-engine memory

}

# SSD及索引储存方案

namespace bar_ssd {

memory-size 4G # 主索引和辅助索引的最大内存分配

# 警告-定义的原始分区设备中的遗留数据将被擦除。

# 这些分区不能被文件系统挂载。

storage-engine device { #配置存储引擎以使用持久性添加原始设备。最大大小为2 TiB

device /dev/sdb3

device /dev/sdc3

device /dev/sdd3

device /dev/sde3

# 下面的2行针对SSD进行了优化。

scheduler-mode noop

write-block-size 128K #调整块大小以使其有效用于SSD。

}

}

#HDD及内存混合存储方案

namespace bar_hdd_mem {

memory-size 4G # 主索引和辅助索引的最大内存分配

single-bin true #索引数据必须为true。

data-in-index true #在索引整数存储中启用。

#配置存储引擎使用持久性

storage-engine device {

file /opt/aerospike/data1 #服务器上数据文件的位置。

file /opt/aerospike/data2 #服务器上数据文件的位置。

# device /dev/sdb3 #使用文件的可选替代方法。

filesize 16G #每个文件的最大大小GB,接近这个值将不再写入数据。最大大小为2TiB

data-in-memory true #设置data-in-memory设置为true,开启内存存储机制

}

}

#HDD及索引储存方案

namespace bar_hdd {

#设置备份数量,针对集群

replication-factor 2

memory-size 4G # 主索引和辅助索引的最大内存分配

single-bin true #索引数据必须为true。

data-in-index true #在索引整数存储中启用。

#配置存储引擎使用持久性

storage-engine device

file /opt/aerospike/data1 #服务器上数据文件的位置。

file /opt/aerospike/data2 #服务器上数据文件的位置。

# device /dev/sdb3 #使用文件的可选替代方法。

filesize 16G #每个文件的最大大小GB。最大大小为2TiB

}

#数据有效期

default-ttl 30d #写入数据后保留多长时间(以秒为单位)

high-water-disk-pct <百分比> #磁盘到多少开始提前过期(记录提前过期)

high-water-memory-pct <百分比> #内存到多少开始提前过期(记录提前过期)

stop-writes-pct <百分比> #内存到多少禁止写操作

# 设置某个set不被清洗

set <set-name> {

set-disable-eviction true # 不被清洗

}

# 设置某个set最多容纳的记录数(record)

set <set-name> {

set-stop-writes-count 5000 # 可以写入的记录数限制为5000。

}

}

以上是 Aerospike配置 的全部内容, 来源链接: utcz.com/z/533515.html

回到顶部