『高级篇』docker之Mesos微服务部署(26)
admin
2023-04-08 09:22:39
0

原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!
原文链接地址:『高级篇』docker之Mesos微服务部署(26)

因本人的mac本才8g,无法同时启动4个虚拟机来完成,3个server,1个harbor。所以镜像直接用hub.docker.com的。mac就启动3个虚拟机。代码里都增加dockerhub的方式。源码:https://github.com/limingios/msA-docker mesos分支

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

HOST运行服务

  • 启动zookeeper

    通过提供的源码shell脚本直接运行。

sh start.sh
  • 启动redis
sh start.sh
  • 启动mysql
sh start.sh

『高级篇』docker之Mesos微服务部署(26)

  • 启动marathon-lb
sh start.sh

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

server01

编写的shell 脚本

#!/bin/bash
docker run -d --net=host --privileged \
  --hostname=192.168.66.101 \
  -e MESOS_PORT=5051 \
  -e MESOS_MASTER=zk://192.168.1.130:2181/mesos \
  -e MESOS_SWITCH_USER=0 \
  -e MESOS_CONTAINERIZERS=docker,mesos \
  -e MESOS_LOG_DIR=/var/log/mesos \
  -e MESOS_WORK_DIR=/var/tmp/mesos \
  -v "$(pwd)/mesos/log/mesos:/var/log/mesos" \
  -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /sys:/sys \
  -v /usr/bin/docker:/usr/local/bin/docker \
  mesosphere/mesos-slave:1.7.0 --no-systemd_enable_support \
  --no-hostname_lookup --ip=192.168.66.101
sh mesos-slave.sh

『高级篇』docker之Mesos微服务部署(26)

server02

编写的shell 脚本 mesos.sh

!/bin/bash
docker run -d --net=host \
--hostname=192.168.66.102 \
-e MESOS_PORT=5050 \
-e MESOS_ZK=zk://192.168.1.130:2181/mesos \
-e MESOS_QUORUM=1 \
-e MESOS_REGISTRY=in_memory \
-e MESOS_LOG_DIR=/var/log/mesos \
-e MESOS_WORK_DIR=/var/tmp/mesos \
-v "$(pwd)/mesos/log/mesos:/var/log/mesos" \
-v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" \
mesosphere/mesos-master:1.7.0 --no-hostname_lookup --ip=192.168.66.102

编写的shell 脚本 marathon.sh

#!/bin/bash
docker run -d --net=host \
  mesosphere/marathon:v1.5.12 \
  --master zk://192.168.1.130:2181/mesos \
  --zk zk://192.168.1.130:2181/marathon
sh mesos.sh
sh marathon.sh

『高级篇』docker之Mesos微服务部署(26)

server03

编写的shell 脚本 marathon.sh

#!/bin/bash
docker run -d --net=host --privileged \
  --hostname=192.168.66.103 \
  -e MESOS_PORT=5051 \
  -e MESOS_MASTER=zk://192.168.1.130:2181/mesos \
  -e MESOS_SWITCH_USER=0 \
  -e MESOS_CONTAINERIZERS=docker,mesos \
  -e MESOS_LOG_DIR=/var/log/mesos \
  -e MESOS_WORK_DIR=/var/tmp/mesos \
  -v "$(pwd)/mesos/log/mesos:/var/log/mesos" \
  -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /sys:/sys \
  -v /usr/bin/docker:/usr/local/bin/docker \
  mesosphere/mesos-slave:1.7.0 --no-systemd_enable_support \
  --no-hostname_lookup --ip=192.168.66.103
sh mesos-slave.sh

『高级篇』docker之Mesos微服务部署(26)

memsos配置微服务

我部署下,看我分配的内存和cpu就知道为什么叫微服务了

  • message-thrift-python-service 部署

0.1cpu和128Mb内存足够了。

『高级篇』docker之Mesos微服务部署(26)

连接是hub.docker.com,上边说了内存太低了没办法启动那边多镜像。

『高级篇』docker之Mesos微服务部署(26)

点击json mode 修改,其实就是修改json文件

『高级篇』docker之Mesos微服务部署(26)

修改成画红色部分的内容,containerPort是应用内的端口,servicePort是marathon控制的端口(上一节统计过外部端口的数字)。

『高级篇』docker之Mesos微服务部署(26)

  • user-thrift-service 部署

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

  • user-edge-service 部署

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

跟上边一样修改端口

『高级篇』docker之Mesos微服务部署(26)

  • course-dubbo-service 部署

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

它不需要端口的映射,直接删除portMappings就可以了

『高级篇』docker之Mesos微服务部署(26)

  • zhugeaming/course-edge-service 部署

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

  • gataway-zuul 部署

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

上边六个服务都需要增加一个labels

key:HAPROXY_GROUP
value:external

external 跟原来marathon-lb里面的分组名称一致

『高级篇』docker之Mesos微服务部署(26)

『高级篇』docker之Mesos微服务部署(26)

部署完成,因为用的dockerhub的仓库,真心慢

本身就是掩饰,家里的笔记本坏了,不好制作局域网的docker仓库,所以比较麻烦。 不过大概就是这么操作的。如果照着我做的老铁,因为我之前跑起来没问题了,建议找个内存大的至少16g的老玩我说的配置。

『高级篇』docker之Mesos微服务部署(26)

marathon 健康检查的类型

3种类型

  1. http
  2. command
  3. tcp
  • 如果是查看端口的话,需要使用tcp的形式

『高级篇』docker之Mesos微服务部署(26)

  • command类型,也就是shell脚本的形式,可以随意发挥

    判断是否成功是看命令退出的返回值是不是0

『高级篇』docker之Mesos微服务部署(26)

  • http类型,也就是直接返回某个网址看看是否返回code=200

    项目的根路径开始的

『高级篇』docker之Mesos微服务部署(26)

环境变量的配置

『高级篇』docker之Mesos微服务部署(26)

容器的挂载

『高级篇』docker之Mesos微服务部署(26)

那些服务适合那些主机标签和权限都在optional里面

『高级篇』docker之Mesos微服务部署(26)

PS:基本的mesos和marathon讲述完成了,因为主机内存后面的结果没有演示但是基本的命令和镜像有了后面基本是,基本操作啦!下次一起学学docker swarm!

『高级篇』docker之Mesos微服务部署(26)

相关内容

热门资讯

“我们完全可以相互成就、共同繁... 在华扎根50年,美国企业康明斯与中国伙伴携手成长、共享机遇——“我们完全可以相互成就、共同繁荣”(见...
乌克兰总统办公室前主任被控涉嫌... △乌克兰总统办公室前主任叶尔马克(资料图)当地时间11日,乌克兰国家反腐败局和特别反腐败检察院表示,...
你的蓝牙耳机正在 “偷听”?国... 在科技飞速发展的当下,无线耳机、智能手表、无线键盘等蓝牙设备凭借“一键连接”带来的便捷优势,已广泛应...
光洋股份:公司立足成为最懂制造... 证券日报网5月11日讯 ,光洋股份在接受调研者提问时表示,公司近年来加快布局机器人领域,立足成为最懂...
重庆拟投千亿培育沉浸式与虚拟现... 🤖 由 文心大模型 生成的文章摘要 重庆市发布“十五五”现代服务业发展规划,明确投入1 重庆市发...
内存缩水开倒车!谷歌Pixel... 5月11日消息,据相关媒体报道,受全球DRAM供应紧缺影响,谷歌即将推出的Pixel 11系列在内存...
伊朗议长:“14点提案”无可替... 当地时间12日凌晨,伊朗议会议长卡利巴夫在社交平台上发布消息称,除了接受伊朗“14点提案”中所规定的...
交付巴基斯坦的“麒麟”级潜艇战... ‍‍近日,在国防部举行的例行消息发布中有媒体提到,中方为巴基斯坦建造的“麒麟”级常规动力潜艇首艇已经...
伊朗官员:伊美就浓缩铀处置方式... 当地时间11日,总台记者获悉,一名伊朗官员称,伊朗与美国之间的谈判在浓缩铀的处置、暂停铀浓缩活动期限...
沈阳添新地标!超级IP“巨虎东... 万众期待,神兽归沈! 5月10日,沈阳专属超级文旅IP“巨虎东东”圆满完成交付唤醒仪式,正式启程奔赴...