CentOS 7中Mesos+Zookeeper+Marathon安装部署全程详解(2)

二、测试,尝试管理一个docker镜像

注意,以下内容没有特别说明可在任意一台服务上完成,我选择在227

1、在docker中下载一个nginx镜像

docker pull nginx

2、在所有mesos-slave上增加配置参数,并重启(这一步在三台服务上面进行操作)

echo 'docker,mesos' | tee /etc/mesos-slave/containerizers
 systemctl restart mesos-slave

3、在浏览器中打开marathon,默认端口8080

:8080

CentOS 7中Mesos+Zookeeper+Marathon安装部署全程详解

下面通过Mesos调度,使用marathon来创建一个nginx镜像的Docker容器,Marathon启动时会读取/etc/mesos/zk配置文件,Marathon通过Zookeeper来找到Mesos Master。

4、创建nginx配置文件nginx.json

[root@mesos-node1 ~]# cat nginx.json
 {
 "id":"nginx",
 "cmd": null,
 "cpus":0.2,
 "mem":32.0,
 "instances": 1,
 "constraints": [["hostname",
 "UNIQUE",""]],
 "container": {
 "type":"DOCKER",
 "docker": {
 "image": "nginx",
 "network": "BRIDGE",
 "portMappings": [
 {"containerPort": 80,
 "hostPort": 0,"servicePort": 0,"protocol":
 "tcp" }
 ]
  }
    }
      }
 [root@mesos-node1 ~]#

5、利用curl的方式开启nginx容器

curl -X POST :8080/v2/apps -d@/root/nginx.json -H "Content-type:application/json"

6、查看开启的容器

[root@mesos-node1 ~]# docker ps -a
 CONTAINER ID        IMAGE              COMMAND                  CREATED              STATUS              PORTS                            NAMES
 5175ef6c9dde        nginx              "nginx -g 'daemon off"  About a minute ago  Up About a minute  443/tcp, 0.0.0.0:31894->80/tcp  mesos-e0a9ccd0-e362-  4250-8c58-08b6ded0bb17-S2.e4635e6a-d25b-4c5b-a351-0756174acf28

7、在浏览器中查看

CentOS 7中Mesos+Zookeeper+Marathon安装部署全程详解

CentOS 7中Mesos+Zookeeper+Marathon安装部署全程详解

但是我们可以发现,只能227这台服务器来访问这个端口,出现nginx页面,用其他的IP地址显然是不可以的.

CentOS 7中Mesos+Zookeeper+Marathon安装部署全程详解

so,接下来我们就来配置服务发现,设置一个固定端口,实现让每个IP地址都可以访问到这个页面。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/585d1b4ae5d5b2349e9eb09a8696a1f6.html