- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想要一个 aerospike-server 节点的多个实例,以便负载平衡,因为我用太多请求访问了服务器,我收到一条错误消息,提示“错误代码 22:此时不允许操作”。
我假设有更多的 aerospike-server 节点,我可以减轻一个节点上的负载,从而完成更多的操作?我只是不确定从哪里开始。
我需要在一台主机上的所有本地节点。任何帮助都会很棒。
我的网络知识不是很好,所以请原谅我
我的 DockerFile:
FROM aerospike/aerospike-server
MAINTAINER "xxxx"
ADD aerospike.conf /etc/aerospike/
version: "3"
services:
aerospike-server:
image: amc
container_name: aerospike-server
ports:
- "3000:3000"
- "3001:3001"
- "3002:3002"
- "3003:3003"
aerospike-amc:
image: mrbar42/aerospike-amc
container_name: aerospike-amc
ports:
- "8081:8081"
network {
service {
address any
port 3000
# Uncomment the following to set the `access-address` parameter to the
# IP address of the Docker host. This will the allow the server to correctly
# publish the address which applications and other nodes in the cluster to
# use when addressing this node.
# access-address <IPADDR>
}
heartbeat {
# mesh is used for environments that do not support multicast
mode mesh
port 3002
# use asinfo -v 'tip:host=<ADDR>;port=3002' to inform cluster of
# other mesh nodes
interval 150
timeout 10
}
fabric {
# address any
port 3001
}
info {
# address any
port 3003
}
}
最佳答案
您可以使用多播心跳配置,并在一台机器上运行一小群 aerospike 节点。
以下是我使用的步骤:
1) 从 aerospike repo 获取最新的 Dockerfile
git 克隆 https://github.com/aerospike/aerospike-server.docker.git
2)修改心跳部分,使用组播:
heartbeat {
mode multicast
multicast-group 239.1.99.2
port 9918
interval 150
timeout 10
}
cat makecluster.sh
docker build -t "aerospike/aerospike-server" .
for i in {3..9} ; do
echo $i;
docker stop aerospike${i}
docker rm aerospike${i}
docker run -tid --name aerospike${i} -p ${i}000:3000 -p ${i}001:3001 -p ${i}002:3002 -p ${i}003:3003 aerospike/aerospike-server
done;
./makecluster.sh
Sending build context to Docker daemon 12.8 kB
Step 1/10 : FROM ubuntu:xenial
---> 2fa927b5cdd3
Step 2/10 : ENV AEROSPIKE_VERSION 3.12.1
---> Using cache
---> f9740fe0e5b5
Step 3/10 : ENV AEROSPIKE_SHA256 16ceb0d131892c3caab31ee031f7e37d7a611c22686fec2692facde87ac69a00
---> Using cache
---> 5e7fbc820f7a
Step 4/10 : RUN apt-get update -y && apt-get install -y wget python python-argparse python-bcrypt python-openssl logrotate net-tools iproute2 iputils-ping && wget "https://www.aerospike.com/artifacts/aerospike-server-community/${AEROSPIKE_VERSION}/aerospike-server-community-${AEROSPIKE_VERSION}-ubuntu16.04.tgz" -O aerospike-server.tgz && echo "$AEROSPIKE_SHA256 *aerospike-server.tgz" | sha256sum -c - && mkdir aerospike && tar xzf aerospike-server.tgz --strip-components=1 -C aerospike && dpkg -i aerospike/aerospike-server-*.deb && dpkg -i aerospike/aerospike-tools-*.deb && mkdir -p /var/log/aerospike/ && mkdir -p /var/run/aerospike/ && rm -rf aerospike-server.tgz aerospike /var/lib/apt/lists/* && dpkg -r wget ca-certificates && dpkg --purge wget ca-certificates && apt-get purge -y
---> Using cache
---> a1d797e088fa
Step 5/10 : COPY aerospike.conf /etc/aerospike/aerospike.conf
---> Using cache
---> 7bb9f5326c7b
Step 6/10 : COPY entrypoint.sh /entrypoint.sh
---> Using cache
---> 345534f6c3b8
Step 7/10 : VOLUME /opt/aerospike/data
---> Using cache
---> 3f07a5e4b113
Step 8/10 : EXPOSE 3000 3001 3002 3003
---> Using cache
---> e081dff6a725
Step 9/10 : ENTRYPOINT /entrypoint.sh
---> Using cache
---> 923ff0299e70
Step 10/10 : CMD asd
---> Using cache
---> a05c71468897
Successfully built a05c71468897
3
aerospike3
aerospike3
4d2df0569581c967d29750a5f7f6e67fc1835e1f6b78157eb5c8b11f843a222b
4
aerospike4
aerospike4
3173f06d9012996ce318855d982fbc20c5985beb7e356863a0075ce3ae337b21
5
aerospike5
aerospike5
10592f8ca508c678cd67695402f3c23ad417716772cf5a20de91c3e178bb1c28
6
aerospike6
aerospike6
7ddac9e31db5b618114c155b40d8ad524b629e96c514837a36854cf420a29d5c
7
aerospike7
aerospike7
6168421deffead460ac238b2a9817769e29d3c68eca33863cf9b0e19a8c09a0f
8
aerospike8
aerospike8
9d1761592c30b1460c064ef06f70067217e1b1c61f3efc2b016113b4869cfc6f
9
aerospike9
aerospike9
67c37f2f6ebae065eef978dcf4683b6ad5bd18bed0411e3d6681c723776c1834
docker exec -ti aerospike7 asadm
Aerospike Interactive Shell, version 0.1.9
Found 7 nodes
Online: 172.17.0.2:3000, 172.17.0.8:3000, 172.17.0.3:3000, 172.17.0.4:3000, 172.17.0.7:3000, 172.17.0.6:3000, 172.17.0.5:3000
Admin>
Admin> info
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Network Information~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Node Node Ip Build Cluster Cluster Cluster Principal Rackaware Client Uptime
. Id . . Size Key Integrity . Mode Conns .
172.17.0.2:3000 BB9020011AC4202 172.17.0.2:3000 C-3.12.1 7 8DBD43898C508D41 True BB9080011AC4202 none 7 00:06:03
172.17.0.3:3000 BB9030011AC4202 172.17.0.3:3000 C-3.12.1 7 8DBD43898C508D41 True BB9080011AC4202 none 8 00:06:02
172.17.0.4:3000 BB9040011AC4202 172.17.0.4:3000 C-3.12.1 7 8DBD43898C508D41 True BB9080011AC4202 none 8 00:06:00
172.17.0.5:3000 BB9050011AC4202 172.17.0.5:3000 C-3.12.1 7 8DBD43898C508D41 True BB9080011AC4202 none 6 00:05:58
172.17.0.7:3000 BB9070011AC4202 172.17.0.7:3000 C-3.12.1 7 8DBD43898C508D41 True BB9080011AC4202 none 10 00:05:55
172.17.0.8:3000 *BB9080011AC4202 172.17.0.8:3000 C-3.12.1 7 8DBD43898C508D41 True BB9080011AC4202 none 6 00:05:52
6168421deffe:3000 BB9060011AC4202 172.17.0.6:3000 C-3.12.1 7 8DBD43898C508D41 True BB9080011AC4202 none 8 00:05:56
Number of rows: 7
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Namespace Information~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Namespace Node Avail% Evictions Master Replica Repl Stop Pending Disk Disk HWM Mem Mem HWM Stop
. . . . (Objects,Tombstones) (Objects,Tombstones) Factor Writes Migrates Used Used% Disk% Used Used% Mem% Writes%
. . . . . . . . (tx,rx) . . . . . . .
test 172.17.0.2:3000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 172.17.0.3:3000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 172.17.0.4:3000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 172.17.0.5:3000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 172.17.0.7:3000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 172.17.0.8:3000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 6168421deffe:3000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) (0.000 ,0.000 ) 0.000 B 0.000 B
Number of rows: 8
cat makecluster.sh
docker build -t "aerospike/aerospike-server" .
for i in {6..9} ; do
echo $i;
docker stop aerospike${i}
docker rm aerospike${i}
docker run -tid --name aerospike${i} -v /root/docker/aerospike-server.docker/aerospike${i}:/etc/aerospike --network host -p ${i}000:${i}000 -p ${i}001:${i}001 -p ${i}002:${i}002 -p ${i}003:${i}003 aerospike/aerospike-server
done;
cat aerospike7/aerospike.conf
# Aerospike database configuration file.
# This stanza must come first.
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 4
transaction-queues 4
transaction-threads-per-queue 4
proto-fd-max 15000
}
logging {
# Log file must be an absolute path.
file /var/log/aerospike/aerospike.log {
context any info
}
# Send log messages to stdout
console {
context any info
}
}
network {
service {
# Add interface name for network card used by host
address br0
# Modify port to be used by your aerospike container
port 7000
# Uncomment the following to set the `access-address` parameter to the
# IP address of the Docker host. This will the allow the server to correctly
# publish the address which applications and other nodes in the cluster to
# use when addressing this node.
# access-address <IPADDR>
}
heartbeat {
mode multicast
multicast-group 239.1.99.2
port 9918
interval 150
timeout 10
}
fabric {
# Modify port to be used by your aerospike container
port 7001
}
info {
# Modify port to be used by your aerospike container
port 7003
}
}
namespace test {
replication-factor 2
memory-size 1G
default-ttl 5d # 5 days, use 0 to never expire/evict.
# storage-engine memory
# To use file storage backing, comment out the line above and use the
# following lines instead.
storage-engine device {
file /opt/aerospike/data/test.dat
filesize 4G
data-in-memory true # Store data in memory in addition to file.
}
}
asadm -p 7000
Aerospike Interactive Shell, version 0.1.9
Found 4 nodes
Online: 192.168.100.148:9000, 192.168.100.148:7000, 192.168.100.148:8000, 192.168.100.148:6000
Admin> info
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Network Information~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Node Node Ip Build Cluster Cluster Cluster Principal Rackaware Client Uptime
. Id . . Size Key Integrity . Mode Conns .
node.local:6000 177160DE04CA0568 192.168.120.148:6000 C-3.12.1 4 5009B1D835FA3C06 True 232960DE04CA0568 none 3 00:28:37
node.local:7000 1B5960DE04CA0568 192.168.120.148:7000 C-3.12.1 4 5009B1D835FA3C06 True 232960DE04CA0568 none 3 00:28:34
node.local:8000 1F4160DE04CA0568 192.168.120.148:8000 C-3.12.1 4 5009B1D835FA3C06 True 232960DE04CA0568 none 3 00:28:30
node.local:9000 *232960DE04CA0568 192.168.120.148:9000 C-3.12.1 4 5009B1D835FA3C06 True 232960DE04CA0568 none 4 00:28:25
Number of rows: 4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Namespace Information~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Namespace Node Avail% Evictions Master Replica Repl Stop Pending Disk Disk HWM Mem Mem HWM Stop
. . . . (Objects,Tombstones) (Objects,Tombstones) Factor Writes Migrates Used Used% Disk% Used Used% Mem% Writes%
. . . . . . . . (tx,rx) . . . . . . .
test node.local:6000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test node.local:7000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test node.local:8000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test node.local:9000 99 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) 2 false (0.000 ,0.000 ) 0.000 B 0 50 0.000 B 0 60 90
test 0.000 (0.000 ,0.000 ) (0.000 ,0.000 ) (0.000 ,0.000 ) 0.000 B 0.000 B
关于docker - docker 上的多个 aerospike 节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43701046/
如果两个连接试图创建同一条记录,aerospike 如何确保只有其中一个能够成功执行?Aerospike 为单个记录上的操作维护一个队列。因此,如果一条记录存在,则对该记录的所有操作都可以串行执行。但
我想知道如何在 Aerospike 中表示关系?我意识到这是一个键值存储,但有没有可以给出的例子? 例如:如果系统中有用户,我想获取与该用户关联的事物记录列表。 最佳答案 几个快速的想法: 1- 让每
我想在 aerospike 中导入以下 csv 文件数据,并希望触发简单的选择查询以使用 python 作为客户端显示数据 例如 policyID,statecode,county,eq_site_l
我目前有一个包含两个节点的工作集群。以下是 /etc/aerospike/aerospike.conf 的内容 - network { service { address an
我们有一个由 8 个节点组成的 aerospike 集群。我们看到,在高峰时段,与其他节点相比,其中一个节点的平均负载明显更高。同样在 AMC 仪表板中,我们看到该节点只有 30% 的读取成功率。在关
有什么办法可以从 aql 或 CLI 的命名空间(Aerospike)中删除一个集合??? 我的集合还包含 Ldts 。 请给我建议一种从 LDT 中删除整个 Set 的方法 最佳答案 您可以使用删除
Aerospike 是一个支持持久性的 key 存储数据库。 但是我可以完全信任这种持久性以将其用作数据库吗? 据我了解,它首先将数据写入内存,然后将其持久化。 我可以忍受最终的一致性,但我不想处于提
我正在考虑将 aerospike 用于我们的一个项目。所以我目前创建了一个 3 节点集群并在其上加载了一些数据。 示例数据 ns: 串号 设置:串号 +-------------------+----
我目前正在设计一个 Aerospike Cluster,它可以处理许多关系,并且会很快变得非常大。我在 aerospike 文档中发现了许多关于使用 python 客户端检索 key 时生成的摘要的引
我们配置了多个客户端来与这个 aerospike 节点集群进行通信。现在我们已经从我们知道的所有客户端中删除了配置,仍然有一些读/写请求传入该集群,如 AMC 中所示。 我查看了/var/log/ae
我正在尝试了解如何最好地构建我的 Aerospike 架构。当我尝试使用它时,我意识到部分问题是我没有完全理解 Aerospike 处理数据的方式,这似乎与 RDBMS 和 Cassandra 不同。
众所周知,Aerospike 服务器不支持某些数据类型,例如 Float。但它们是在客户端处理的。例如,1.0.40 版的 Python 客户端使用序列化支持不受支持的数据类型。 我想知道客户端在从服
我正在尝试了解如何最好地构建我的 Aerospike 架构。当我尝试使用它时,我意识到部分问题是我没有完全理解 Aerospike 处理数据的方式,这似乎与 RDBMS 和 Cassandra 不同。
众所周知,Aerospike 服务器不支持某些数据类型,例如 Float。但它们是在客户端处理的。例如,1.0.40 版的 Python 客户端使用序列化支持不受支持的数据类型。 我想知道客户端在从服
我在一组中有数百万条记录。我想检索所有匹配相同模式的记录。 例如我可能有: id=4444?mode=mode1?fieldA=abc id=4444?mode=mode1?fieldA=azerty
我想从命名空间的集合中选择随机“n”个容器的样本。有没有办法在 Aerospike 查询语言中实现这一点? 在 Oracle 中,我们通过以下查询实现了类似的功能: SELECT * FROM sa
我正在使用 Aerospike 4.8v 并将我的数据保存在磁盘上,并且我正在向 aerospike 发出并行写入请求,如果我发出 10 个并行请求,那么它工作正常,但是当我发出 100 个并行请求时
我想在 aerospike 中查看数据,但找不到任何 GUI 工具。像aql这样的控制台应用程序令人不舒服。有这样的GUI工具吗? 最佳答案 当前答案:2021 打电话过来,想让我更改语音信箱。 ht
HBase 的协处理器是“移动计算而不是数据”的一个很好的例子。不确定 Aerospike 是否支持类似的功能? 最佳答案 Aerospike 支持用户定义函数 (UDF),这些函数是用户加载到数据库
我有一个包含两个 bin 的现有记录,我需要使用 java 客户端 API 向它添加第三个 bin val client = new AerospikeClient("localhost",3000)
我是一名优秀的程序员,十分优秀!