介绍高
我总是对米切尔桥本和感兴趣Hashicorp是,我通常发现他们的项目价值。如果你听说过流浪的你知道他们的工作。
我最近更新的项目感兴趣他们称为“领事”。领事有点难以描述。这是(部分):
- 高度一致的元数据存储(有点像Zookeeeper)
- 监控raybet雷竞技竞猜在线官网系统(轻量级Nagios)
- DNS和基于http的服务发现系统。(想想haproxy之类,而是tcp负载平衡,它提供了dns查找与健康服务)
这与Percona XtraDB集群雷竞技下载官网
我有一些更复杂的测试雷竞技下载官网Percona XtraDB集群(PXC)在我的盘子很长一段时间,我开始探索高作为一个工具来帮助。我已经有了流浪的设置为PXC是健康的,但确保所有节点,开始测试,收集结果等仍然困难。
所以,我松领事的目标是:
- 一个仪表板,以确保我的测试环境是健康的
- 能够适应任何大小环境- 3节点集群20 +
- 协调启动和停止在任意数量的测试客户机上运行的负载测试
- 有能力收集分布式测试结果
我在这些方面的成功我一直在流浪的环境。这个旋转:
- 领事集群(缺省为单个节点)
- 测试服务器(s)
- PXC集群
此外,它集成了测试服务器和PXC节点等领事:
- 客户端模式下的服务器设置一个领事代理高集群
- 此外,他们设置一个本地DNS转发器,将所有DNS请求发送到”。领事的域当地代理集群由领事服务。
- 领事的服务器注册服务,当地的卫生检查
- 测试服务器(s)设置一个“看”在领事等开始sysbench领事“事件”。
看到它在行动
当我运行我的“流浪汉”,我得到一个领事UI我在本地8501端口可以连接到:
我可以看到所有5节点。我可以检查服务和看到test1是失败的一个健康检查,因为sysbench还没有运行:
这是正常的,因为我还没有开始测试。我可以看到PXC集群健康:
系统中涉及Perco雷竞技下载官网na云工具
到目前为止还好。这个流浪汉配置(如果我在环境提供一个PERCONA_AGENT_API_KEY)也注册雷竞技下载官网我的测试服务器雷竞技下载官网Percona云工具,所以我可以看到我的节点数据报告:
现在我准备开始测试。这样做,我只需要出具领事事件从任何节点:
|
1
2
3
4
|
jayj
@
~
/
Src
/
pxc
_领事
(
507年
]
美元
流浪的
ssh
consul1
去年
登录
:
结婚
11月
26
14
:
32
:
38
2014年
从
10.0.2.2
(
根
@
consul1
~
]
#领事事件- name = ' sysbench_update_index '
事件
ID
:
7 c8aab42
- - - - - -
fd2e
- - - - - -
de6c
- - - - - -
cb0c
- - - - - -
1 de31c02ce95
|
我的预配置的观察者在我的测试节点知道如何处理这个事件并启动sysbench。高表明sysbench确实运行:
我确实可以看到交通开始进来Percona云工具:雷竞技下载官网
我测试流量有限的例子,但这很容易通过Vagrantfile可调。显示更令人印象深刻,这是一个5节点集群运行达到约2500 tps总吞吐量:
所以总结到目前为止:
- 我可以自旋向上任何规模的集群并验证它是健康与领事的UI
- 我可以旋转任意数量的测试服务器,启动sysbench同时他们所有人
高的另一个技巧
到目前为止一切顺利,但让我指出一些事情可能不明显。如果你检查Vagrantfile,我使用一个领事主机名在一些地方。首先,在测试服务器上:
|
1
2
3
4
5
6
|
# sysbench设置
“表”
= &
gt
;
1
,
“行”
= &
gt
;
1000000
,
“线程”
= &
gt
;
4
*
pxc_nodes
,
“tx_rate”
= &
gt
;
10
,
“mysql_host”
= &
gt
;
“pxc.service.consul”
|
然后再次PXC服务器配置:
|
1
2
3
4
5
6
7
8
|
# PXC设置
“雷竞技下载官网percona_server_version”
= &
gt
;
pxc_version
,
“通过innodb_buffer_pool_size”
= &
gt
;
1克的
,
“innodb_log_file_size”
= &
gt
;
1克的
,
“innodb_flush_log_at_trx_commit”
= &
gt
;
' 0 '
,
“pxc_bootstrap_node”
= &
gt
;
(
我
= =
1
吗?
真正的
:
假
)
,
“wsrep_cluster_address”
= &
gt
;
“gcomm: / / pxc.service.consul”
,
“wsrep_provider_options”
= &
gt
;
“gcache.size = 2 g;gcs.fc_limit = 1024”
,
|
注意“pxc.service.consul”。这个主机名是由领事和解决当前服务器的ip产生和传递“pxc”服务健康检查:
|
1
2
3
4
|
(
根
@
test1
~
]
#主机pxc.service.consul
pxc
。
服务
。
领事
有
地址
172.28.128.7
pxc
。
服务
。
领事
有
地址
172.28.128.6
pxc
。
服务
。
领事
有
地址
172.28.128.5
|
所以我使用这我的优势在两个方面:
- 我PXC集群自动接连第一个节点,但所有其他节点wsrep_cluster_address使用这个主机名。这意味着:没有特定的主机名或ip文件在my . cnf中所做,这个主机名总是最新的与集群中的节点是活跃的;这是准确的清单,应该在wsrep_cluster_address在任何给定的时刻。
- 我的测试服务器连接到这个主机名,因此他们总是知道connect和他们将循环(如果我有足够的sysbench线程和PXC节点)到不同节点基于dns查询的响应,返回3活跃节点每次都以不同的顺序。
(一些)的问题
这仍然是一个进展中的工作还有很多可以改进:
- 我依靠PCT收集数据,但它会很高兴利用高中央键/值存储来存储结果的独立sysbench运行。
- 高领导人选举集群可以用来帮助确定哪些节点应该在第一次启动引导。我假设node1应该引导。
- 各种细菌在不同的软件仍然使这有时有点笨重的管理。这是一个示例:
- 领事事件有时不火在当前版本(虽然它看起来很快就会固定)
- PXC加入节点有时会卡住把速度撞到自动化部署。
- 自动安装percona-agent(发送数据雷竞技下载官网Percona云工具)是直接的,除了当不同的集群节点击败对方的凭证。
所以,总之,我很高兴与难易程度高集成和我已经找到它在0.4.1有用的产品。













你好,我要使用percona +高生产。雷竞技下载官网我要避免consul-template厨师因为我已经使用的配置。
你能请确认使用吗
“wsrep_cluster_address”= >“gcomm: / / pxc.service.consul”,会导致使用/指定主机注册的“所有”“pxc”定义在领事服务?像一个. .N IP地址?这ovbiously取决于什么percona与“gcomm雷竞技下载官网: / /处理程序。由于采购经理人指数
嗨epcim——wsrep_cluster_address并不要求每一个活跃的集群节点被列出。使用它只有当本地节点开始,它只需要找到一个活动节点集群中。pxc.service。领事only needs to give a single ip of another active node for the local node to successfully join.
谢谢!