天天看点

CentOS7 部署elasticsearch

作者:海阔凭鱼跃,天高任鸟飞!

Consul 是用于实现分布式系统的服务发现与配置,Consul 是分布式的、高可用的、可横向扩展的。

Server的数量建议是 3~5 台,Client 的数量建议2~5台,这能平衡故障情况下的可用性和集群性能。

架构示意图:

CentOS7 部署elasticsearch
CentOS7 部署elasticsearch

搭建环境

最低启动3个server,2个client

如:

server1 IP:192.168.0.1

server2 IP:192.168.0.2

server3 IP:192.168.0.3

client1 IP:192.168.0.4

client2 IP:192.168.0.5

server1 集群启动脚本

#!/bin/sh

# 路径,IP, 名称 
ROOT="/www/wwwroot/X3_Consul"
IP="192.168.0.1"
NAME="server1"

nohup "$ROOT"/consul agent -ui -server -bootstrap-expect=1 -config-dir="$ROOT"/tmp -data-dir="$ROOT"/tmp -node="$NAME" -bind="$IP" -client=0.0.0.0 -enable-script-checks=true >> "$ROOT"/tmp/consul.log 2>&1

echo $! > /var/run/consul.pid
           

server2 集群启动脚本,注册到集群

#!/bin/sh
# 路径,IP, 名称
ROOT="/www/wwwroot/X3_Consul/"
IP="192.168.0.1"
NAME="server2"
MAIN="192.168.0.2"

nohup "$ROOT"/consul agent -ui -server -bootstrap-expect=2 -config-dir="$ROOT"/tmp -data-dir="$ROOT"/tmp -node="$NAME" -bind="$IP" -client=0.0.0.0 -enable-script-checks=true -join "$MAIN" >> "$ROOT"/tmp/consul.log 2>&1

echo $! > /var/run/consul.pid
           

server3 集群启动脚本,注册到集群

#!/bin/sh
# 路径,IP, 名称
ROOT="/www/wwwroot/X3_Consul/"
IP="192.168.0.1"
NAME="server2"
MAIN="192.168.0.3"

nohup "$ROOT"/consul agent -ui -server -bootstrap-expect=2 -config-dir="$ROOT"/tmp -data-dir="$ROOT"/tmp -node="$NAME" -bind="$IP" -client=0.0.0.0 -enable-script-checks=true -join "$MAIN" >> "$ROOT"/tmp/consul.log 2>&1

echo $! > /var/run/consul.pid
           

client1 集群启动脚本

#!/bin/sh
# 路径,IP, 名称
ROOT="/www/wwwroot/X3_Consul/"
IP="192.168.0.2"
NAME="client1"
MAIN="192.168.0.4"

nohup "$ROOT"/consul agent -ui  -config-dir="$ROOT"/tmp -data-dir="$ROOT"/tmp -node="$NAME" -bind="$IP" -client=0.0.0.0 -enable-script-checks=true -join "$MAIN" >> "$ROOT"/tmp/consul.log 2>&1

echo $! > /var/run/consul.pid
           

client2 集群启动脚本

#!/bin/sh
# 路径,IP, 名称
ROOT="/www/wwwroot/X3_Consul/"
IP="192.168.0.3"
NAME="client1"
MAIN="192.168.0.5"

nohup "$ROOT"/consul agent -ui  -config-dir="$ROOT"/tmp -data-dir="$ROOT"/tmp -node="$NAME" -bind="$IP" -client=0.0.0.0 -enable-script-checks=true -join "$MAIN" >> "$ROOT"/tmp/consul.log 2>&1

echo $! > /var/run/consul.pid
           

启动后浏览consul集群内IP地址如图

ip+8500

CentOS7 部署elasticsearch

继续阅读