mesos和Elasticsearch设计(Docker部署)(四)

这次用的版本是mesos-elasticsearch,基于Docker的安装及使用。

地址在http://mesos-elasticsearch.readthedocs.org/en/latest/

利用Docker安装,Docker hub里有两个images,一个是mesos/elasticsearch-scheduler,一个是mesos/elasticsearch-excutor

我的实验环境,是由三台虚拟机组成的mesos集群,ubuntu是master,两个debian是slave(debian和debian2)。

一、从Docker hub里pull下来mesos/elasticsearch-scheduler,mesos/elasticsearch-excutor两个镜像,打上tag后push到registry

二、在master上用marathon来部署elasticsearch的安装

      先写一个marathon.json文件

     { "id":"elasticsearch-mesos-scheduler",  

"container":{  

"docker":{  

"image":"ubuntu:5000/el-sc",  

"network":"HOST"  

}  

},  

"args":["--zookeeperMesosUrl","zk://ubuntu:2181/mesos","--executorImage","ubuntu:5000/el-ex","--executorForcePullImage","true"],  

"cpus":0.2, "mem":512.0,  

"env":{  

"JAVA_OPTS":"-Xms128m -Xmx256m"},  

"instances":1

}

解释一下,这里的instances为1是通过marathon安装scheduler一个,一般会装在master上,然后再通过scheduler安装excutor,默认不设参数的话是三个excutor。ubuntu是master的域名,ubuntu:5000/el-sc是我前面上传到registry的images,ubuntu:5000/el-ex是传到registry的images。

然后用curl提交的marathon

curl -k -XPOST -d @marathon.json -H "Content-Type: application/json" http://ubuntu:8080/v2/apps

3、在浏览器里输入localhost:31100就可以看见el的集群及搜索控制台。(注意:localhost:5050查看节点任务部署的情况,有时候不scheduler

不一定安装在master)

4、测试时利用curl上传json数据(注:上传得端口是31000)

$ curl -XPUT http://debian:31000/twitter/tweet/1-d '{
    "user": "kimchy",
    "post_date": "2009-11-15T13:12:00",
    "message": "Trying out elasticsearch, so far so good?"
}'

即可在el里查看了。

http://blog.csdn.net/joosonmao/article/details/49174229

相关推荐