7条命令在docker中部署Mesos集群
7条命令在docker中部署Mesos集群
所有使用的Docker容器构建文件是有也。您可以在本地构建每个容器或只使用位于Docker Hub预构建的容器。下面的命令会自动下载所需的预建的容器为您服务。
ZooKeeper — https://registry.hub.docker.com/u/garland/zookeeper/
Meso Master — https://registry.hub.docker.com/u/garland/mesosphere-docker-mesos-master/
Marathon — https://registry.hub.docker.com/u/garland/mesosphere-docker-marathon/
第1步:获取Docker服务器的IP,并出口出来到环境中。我们将使用这个IP一遍又一遍在随后的Docker命令。
root@docker-server:/# HOST_IP=10.11.31.7
第2步:启动ZooKeeper的容器。
docker run -d \
-p 2181:2181 \
-p 2888:2888 \
-p 3888:3888 \
garland/zookeeper
第3步:启动Mesos主服务器
docker run --net="host" \
-p 5050:5050 \
-e "MESOS_HOSTNAME=${HOST_IP}" \
-e "MESOS_IP=${HOST_IP}" \
-e "MESOS_ZK=zk://${HOST_IP}:2181/mesos" \
-e "MESOS_PORT=5050" \
-e "MESOS_LOG_DIR=/var/log/mesos" \
-e "MESOS_QUORUM=1" \
-e "MESOS_REGISTRY=in_memory" \
-e "MESOS_WORK_DIR=/var/lib/mesos" \
-d \
garland/mesosphere-docker-mesos-master
第4步:启动马拉松Marathon
docker run \
-d \
-p 8080:8080 \
garland/mesosphere-docker-marathon --master zk://${HOST_IP}:2181/mesos --zk zk://${HOST_IP}:2181/marathon
第5步:在一个容器中启动Mesos
docker run -d \
--name mesos_slave_1 \
--entrypoint="mesos-slave" \
-e "MESOS_MASTER=zk://${HOST_IP}:2181/mesos" \
-e "MESOS_LOG_DIR=/var/log/mesos" \
-e "MESOS_LOGGING_LEVEL=INFO" \
garland/mesosphere-docker-mesos-master:latest
第6步:转到了Mesos“网页
这取决于你如何把你的Docker服务器,它的IP地址,你可能需要改变你的浏览器指向的IP,但端口是相同的。
该Mesos网页将在这个地址:
http://${HOST_IP}:5050
那么你应该得到这样的页面,但可能在第一次没有在“任务”表中的所有项目。
步骤7:转到Marathon的网页开始作业
Marathon网页让您安排长时间运行的任务,到中观从容器中。这是一个很好的测试,看看你的集群启动并运行。您可以在观看Marathon的网页:
HTTP://$ {} HOST_IP:8080
点击右上角“新应用”按钮,为您提供以下菜单,你可以创建一个新的工作/任务。我们只是要呼应了招呼到一个文件中。我们可以进入容器中,如果创建的文件检查,如果作业连续运行。
第8步:检查工作/任务运行
让检查工作/任务不断在Mesos从运行。
在Docker服务器中运行以下命令。它将把你内心的奴隶容器,并从那里尾出output.txt的文件。
docker exec -it mesos_slave_1 /bin/bash
root@ca83bf0ea76a:/# tail -f /tmp/output.txt
你会看到“你好”被放置到这个文件约每秒一次。
更新:我刚刚更新了此项目文档,包括如何设置多节点环境:https://github.com/sekka1/mesosphere-docker#multi-node-setup
本文翻译自:https://medium.com/@gargar454/deploy-a-mesos-cluster-with-7-commands-using-docker-57951e020586

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
[Docker大讨论]docker并非万能,你也不必把所有的东西都部署在docker上
[Docker大讨论]docker并非万能,你也不必把所有的东西都部署在docker上 当读了一篇文章"在docker容器中运行并升级MySQL服务器":https://intercityup.com/blog/running-upgrading-mysql-server-docker/之后,我觉得docker并非万能,你也不必把所有的东西都部署在docker上,比如数据库。 作者在容器中升级mysql碰到了问题,同时提出了4个解决方案:1.启动一个新的升级版本的mysql容器但显然,你需要先听到旧容器再启动新容器,这样你就会宕机2.使用Percona或者MariaDB做集群3.在运行的容器中升级软件4.作者更推荐最后一种,就是不要为数据库使用docker 作者最后总结说,docker适用于应用程序部署,但是不适用于数据库,各位学习docker的同学觉得如何呢?
-
下一篇
OpenStack Nova 源码分析
http://blog.51cto.com/zt/366
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,8上快速安装Gitea,搭建Git服务器
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker快速安装Oracle11G,搭建oracle11g学习环境