Tag: mesos

设置一个docker / fig Mesos环境

我试图build立一个docker / fig Mesos集群。 我是新来的无花果和docker工人。 Docker有很多文档,但是我发现自己正在努力去理解如何使用无花果。 这是我目前的fig.yaml: zookeeper: image: jplock/zookeeper ports: – "49181:2181" mesosMaster: image: mesosphere/mesos:0.19.1 ports: – "15050:5050" links: – zookeeper:zk command: mesos-master –zk=zk –work_dir=/var/log –quorum=1 mesosSlave: image: mesosphere/mesos:0.19.1 links: – zookeeper:zk command: mesos-slave –master=zk 谢谢 ! 编辑: 感谢Mark O`Connor的帮助,我创build了一个基于docker的工作模式(+ storm,chr​​onos等等)。 享受,如果你觉得这有用 – 请提供: https : //github.com/yaronr/docker-mesos PS。 请+1 Mark的回答:)

– Marathon docker应用程序中的add-host参数

我有Docker图像(有入口点),我想用Mesos和Marathon来运行。 这些映像需要在/ etc / hosts和/etc/resolv.conf中进行更改。 当我通常运行这个我会做这样的事情: docker run –add-host host:ip –dns-search url image 但在一个马拉松应用程序(我设置为一个json的身体被发送到马拉松),我不知道这些选项将被映射到。 例如-p在json主体中变成portMappings 。 有没有人知道–add-host和–dns-search以及潜在的其他选项会变成什么–dns-search ?

在具有NFS的主机之间共享docker镜像

我正在使用3个主服务器(运行zookeeper,mesos-master,marathon和haproxy)和N个从服务器(运行mesos-slave和docker)构buildAWS实例上的mesosphere基础结构。 如果我运行相同的容器在不同的奴隶马拉松下载每个奴隶相同的图像。 我想分享一个单一的NFS导出(说master1),并将其安装在每个奴隶,以便有一个独特的图像存储。 我在EC2实例上使用Ubuntu,所以默认使用的存储驱动程序是device-mapper。 我build立了一个从/ var / lib / docker / devicemapper和/ var / lib / docker / graph的奴隶,但是这个错误结束了:“stale NFS file handle” 我想了解的是: 有一种方法可以使用不同的存储驱动程序来做到这一点? 在任何情况下,docker守护进程在这个目录中的文件做一些看看吗? 我的方法是错误还是可能导致“并发访问问题?

Elasticsearch群集的build议设置包含TB和更高级别的数据?

目前,我有几个Elasticsearch节点在几个裸机上运行,​​包含大小为TB的索引。 我们正在重build我们的基础设施,我不确定这是否是最好的方法。 我一直在寻找Docker,Mesos和Vagrant作为替代品,但我不确定它们是否可能。 我认为有四种情况是相关的(以及我遇到的问题): Mesos-Elasticsearch :这个包在Mesos上运行Elasticsearch。 这看起来不错,但它似乎只允许以小磁盘大小来扩展数据节点。 另外,没有主/客户端节点。 这个软件包目前在Github上是非常stream行的 – 我在默认设置中收到了“无路由到主机”和MasterNotDiscoveredException错误。 有没有人有这方面的经验? Docker :我不太熟悉容器,但是Dockerhub有几个Elasticsearch的容器。 而且,Mesos允许容器在其上运行。 我担心每个容器中的磁盘空间不足,因为我的数据处于TB的范围之内。 而且,数据是持久的。 正在调整容器的磁盘的大小是否可行或是否有不同的Docker容器设置? Vagrant虚拟机 :我会想象有一个适合分配资源的每个ES节点的虚拟机。 与使用裸机相比,是否有任何实质性的好处? 这似乎与Mesos不兼容。 裸机 :这是当前的设置。 我想知道在TB级别的Elasticsearch集群中,哪四个是您的首选设置。 每个选项的优缺点?

如何在Mesos或CoreOS中configurationMariaDB和Redis的高可用性群集

在大多数教程,演示和演示中,只提供通过DNS(SkyDNS,skydock等)或通过反向代理(例如configuration了etcd或ZooKeeper的HAproxy或Vulcand)进行负载平衡的无状态服务。 是否有使用以下方法部署MariaDB和Redis集群的最佳做法: CoreOS +机群+ Docker; 要么 Mesos + Marathon + Docker 任何其他集群pipe理解决scheme 当运行Master的主机可能更改时,如何configurationRedis群集和MariaDB群集(Galera)? https://github.com/sheldonh/coreos-vagrant/tree/master/redis http://www.severalnines.com/blog/how-deploy-galera-cluster-mysql-using-docker-containers

在Mesos上的Kubernetes

我有下面的设置:Kobernetes在Mesos(基于kubernetes-mesos项目)在一个/ 16networking内。 每个吊舱都有自己的知识产权,我相信这将会利用64000个豆荚。 这个想法是为每个应用程序提供隔离,即每个应用程序在同一个pod中获取自己的mysql – 应用程序访问本地主机上的mysql(在pod中)。 如果需要额外的服务,我会使用kubernetes滚动更新来将服务的容器添加到容器中,应用程序也能够在本地主机上访问这个新服务。 每个应用程序都需要尽可能多的隔离。 这样的实现有什么缺陷吗? 我必须使用编织吗? 有一个选项可以在运行kubernetes-mesos安装时指定service-ip-range。 一个洞是如何扩展服务,这是真的可行吗? 有一个更好的方法吗? 即提供隔离的服务 谢谢。 PS //我很明显是一个noobie在这个,我试图得到最好的设置运行。

HaProxy用于在马拉松式集装箱docker上进行服务发现

请不要询问我检查过的任何地方。 这是我所做的。 我能够部署mesos,马拉松和docker的单个实例。 移动下一步,我想有2个mesos奴隶(docker集装箱)相互链接。 只要使用docker,可以通过使用docker链接function来实现。 但是,当使用编排(mesos)和调度程序(马拉松),似乎你需要使用服务发现。 我的设置很简单,在一台主机上运行。 所以我将有2个Docker容器运行一个简单的pub / sub和一个运行rabbitmq。 如何在此设置中使用HA PRoxy。 我已经看到mesosphere http://mesosphere.com/docs/getting-started/service-discovery/提供的一些文件,但不清楚如何去做。

Kubernetes vs Kubernetes在Mesos上?

因此,Google Kubernetes是一个Docker容器集群pipe理解决scheme,可帮助简化容器的部署,扩展,调度和维护。 Apache Mesos是一个工作调度程序,可以计算出作业(如部署Docker容器,某些批处理作业等)的运行位置。 Kubernetes可以是“原始的”并运行stadalone,或者有Kubernetes on Mesos选项,其中Kubernetes被部署为Mesos框架并运行在Mesos集群的顶部。 我想知道如何在Mesos上运行Kubernetes,而不是“原始的”Kubernetes? Mesos可以做非Docker的工作:它可以运行Java / Python / Ruby /等。 一般的Linux虚拟机上的应用程序。 它可以运行脚本。 这只是一个普通的工作引擎。 所以初看起来, Mesos提供的Kubernetes的唯一优势就是它将Kubernetes集群放到Mesos上,在那里你可以运行其他未被Docker化的作业。 我确定我没有在这里看到“通过树木的森林”,但是如果我已经知道我要使用Docker和Kubernetes,为什么我可以考虑在Mesos上运行Kubernetes?

如何用BRIDGEnetworking在Marathon中设置Cassandra Docker集群?

我有一个生产DC / OS(v1.8.4)群集,我正在尝试在其中设置一个Cassandra群集。 我使用Marathon(v1.3.0)来部署Cassandra节点。 我使用Cassandra的官方Docker镜像,更具体的说是2.2.3版本。 第一种情况:使用HOST模式networking部署Cassandra – 一切正常 在这种情况下,我首先部署一个称为cassasndra-seed的节点,并将其附加到IP为10.32.0.6的物理主机。 从这个服务的Marathon的stdout日志中,我可以看到“Node /10.32.0.6状态跳转到正常”,并且listen_address和broadcast_address被设置为10.32.0.6。 如果我在主节点上使用“_cassandra-seed._tcp.marathon.mesos SRV”检查mesos-dnslogging,我可以看到为这个服务parsing的IP是10.32.0.6。 该节点function齐全,我设法创build一个testing数据库。 { "id": "/cassandra-seed", "cpus": 1.5, "mem": 8192, "disk": 0, "instances": 1, "container": { "type": "DOCKER", "docker": { "image": "cassandra:2.2.3", "network": "HOST", "ports": [7199,7000,7001,9160,9042], "requirePorts": true, "privileged": true } }, "constraints": [ ["hostname","UNIQUE"] ], "env": { "CASSANDRA_CLUSTER_NAME": "democluster" } } 现在我使用单独的部署添加一个cassandra节点,并提供10.32.0.6作为种子(在部署JSON的env部分中设置“CASSANDRA_SEEDS”:“10.32.0.6”)。 新节点获取另一个物理主机的IP(与之前的模式相同),并pipe理与种子节点闲谈。 […]

docker集装箱集群上的DC / OS

考虑到我只有一台机器(高configuration笔记本电脑),我可以在笔记本电脑上运行整个DCOS(仅用于模拟/学习目的)。 我想这样设置的方式是使用N个Docker容器(在它们之间启用联网),其中来自N的一些将是主人,一些奴隶,一个动物园pipe理员,以及一个容器来运行调度器/应用。 所以在这种情况下,基本上1docker容器将是一个机器实例的代名词。 (因为我没有多台机器,并且在一台机器上使用多台虚拟机将是一个过度的杀伤力) 这是否已经完成了,这样我可以直接尝试一下,或者我完全错过了一些关于理解的东西?