设为首页 加入收藏

TOP

第四章 consul cluster(一)
2017-09-30 13:42:26 】 浏览:9472
Tags:第四章 consul cluster

1、vagrant

为了模拟集群效果,使用vagrant

1.1、首先下载vagrant

https://www.vagrantup.com/downloads.html

说明:浏览器下载可能比较慢,可以通过迅雷下载。

1.2、下载之后,安装vagrant

mac中下一步到底就可以。

说明:虽然vagrant需要依赖于virtualbox,需要事先安装。

1.3、打开终端,启动vagrant

1.3.1、初始化:

说明:以上是安装64bit的Linux系统(Ubuntu),32bit的将数字改为32即可。

参考:https://liuzhichao.com/p/1940.html

1.3.2、修改Vagrantfile文件

说明:ruby写的,内容改为如下:

 1 # -*- mode: ruby -*-
 2 # vi: set ft=ruby :
 3 $script = <<SCRIPT
 4 echo Installing dependencies...
 5 sudo apt-get update
 6 sudo apt-get install -y unzip curl
 7 echo Fetching Consul...
 8 cd /tmp/
 9 wget https://releases.hashicorp.com/consul/0.6.1/consul_0.6.1_linux_amd64.zip -O consul.zip
10 echo Installing Consul...
11 unzip consul.zip
12 sudo chmod +x consul
13 sudo mv consul /usr/bin/consul
14 sudo mkdir /etc/consul.d
15 sudo chmod a+w /etc/consul.d
16 SCRIPT
17 
18 # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
19 VAGRANTFILE_API_VERSION = "2"
20 
21 Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
22   config.vm.box = "debian/wheezy64"
23 
24   config.vm.provision "shell", inline: $script
25 
26   config.vm.define "n1" do |n1|
27       n1.vm.hostname = "n1"
28       n1.vm.network "private_network", ip: "172.20.20.10"
29   end
30 
31   config.vm.define "n2" do |n2|
32       n2.vm.hostname = "n2"
33       n2.vm.network "private_network", ip: "172.20.20.11"
34   end
35 end
View Code

该文件内容是consul官方推荐的demo。这一块儿内容可以根据实际情况去修改。(我将节点的IP自己指定了一下,尽量不要与自己本机的IP一样,否则可能会影响一些功能),以下是我的配置。

 1 # -*- mode: ruby -*-
 2 # vi: set ft=ruby :
 3 $script = <<SCRIPT
 4 echo Installing dependencies...
 5 sudo apt-get update
 6 sudo apt-get install -y unzip curl
 7 echo Fetching Consul...
 8 cd /tmp/
 9 wget https://releases.hashicorp.com/consul/0.6.1/consul_0.6.1_linux_amd64.zip -O consul.zip
10 echo Installing Consul...
11 unzip consul.zip
12 sudo chmod +x consul
13 sudo mv consul /usr/bin/consul
14 sudo mkdir /etc/consul.d
15 sudo chmod a+w /etc/consul.d
16 SCRIPT
17 
18 # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
19 VAGRANTFILE_API_VERSION = "2"
20 
21 Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
22   config.vm.box = "debian/wheezy64"
23 
24   config.vm.provision "shell", inline: $script
25 
26   config.vm.define "n110" do |n1|
27       n1.vm.hostname = "n110"
28       n1.vm.network "private_network", ip: "192.168.21.110"
29   end
30 
31   config.vm.define "n111" do |n2|
32       n2.vm.hostname = "n111"
33       n2.vm.network "private_network", ip: "192.168.21.111"
34   end
35 end
View Code

只是修改了节点位置,其实上边的script根本没让他去执行,可以去掉。

1.3.3、启动

说明:当看到日志输出到

就可以"ctrl+c"退出了(可能有时候需要"ctrl+c"两次),否则会将本机~/下的内容同步到n110这个节点,可能n110这个节点的空间会不够,导致后期工作无法进行。

这时候一个节点启动起来了,但是第二个没起来,需要再执行上边的操作一次。

最后,第三次执行启动命令。

这样就好了。

 

之后针对n110和n111两个节点分别安装软件。

2、安装软件

进入/tmp/,下载consul软件。

之后解压(前提是"unzip"命令已安装,如果没安装,执行

解压之后出现一个二进制文件"consul",如下:

之后将这个二进制文件移动或拷贝到/usr/bin下

说明:以上步骤分别针对针对n110和n111两个节点执行一次。

 

3、n110以server模式启动服务

关于启动命令和启

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇第三章 consul服务注册与服务查询 下一篇附1 consul常用命令+常用选项

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目