我试着启动一个Aerospike集群并通过Docker运行,然后使用以下配置启动集群
Configuration:
service {
user root
group root
paxos-single-replica-limit 1 # Number of nodes where the replica count is automatically reduced to 1.
pidfile /var/run/aerospike/asd.pid
service-threads 24
transaction-queues 4
transaction-threads-per-queue 4
proto-fd-max 15000
}
network {
service {
address any
access-address 172.16.43.5
port 3000
}
heartbeat {
mode mesh
port 3002 # Heartbeat port for this node.
address 172.16.43.5
# List one or more other nodes, one ip-address & port per line:
# Please note that we do not have the address of the incoming node in this list
mesh-seed-address-port 172.16.43.7 3002
mesh-seed-address-port 172.16.43.5 3002
# Having the node itself as a mesh seed node is allowed
# and helps with consistent configuration files across the cluster
interval 250
timeout 10
}
fabric {
port 3001
}
info {
port 3003
}
}
namespace test {
# Data in memory without persistance namespace
replication-factor 2
memory-size 32G
default-ttl 30d # 30 days, use 0 to never expire/evict.
storage-engine memory
}
但是集群中的节点失败,并出现以下错误:
Mar 22 2019 16:48:48 GMT: WARNING (socket): (socket.c:805) Error while binding to 172.16.43.5:3002: 99 (Cannot assign requested address)
这是我试图运行它的命令:
docker run -p 3000:3000 -p 3001:3001 -p 3002:3002 -p 9918:9918 -v /home/user/aerospike:/opt/aerospike/etc aerospike/aerospike-server:latest --config-file /opt/aerospike/etc/aerospike.conf
如果使用
--net host
我得到以下错误:
cat: /sys/class/net/eth0/operstate: No such file or directory
这是一种错误还是我配置有误?