Skip to content

Latest commit

 

History

History
74 lines (45 loc) · 1.79 KB

service.md

File metadata and controls

74 lines (45 loc) · 1.79 KB

3.4: 处理restfulapi等应用

k8s是底层的集群管理服务,在k8s上层有resfulapi、jobmanager、webui等服务。

通过在dev machine上build生成Docker镜像,推到Docker hub上,再在目标节点从Docker hub上拉下来,启停服务。

登录Docker

在dev machine上需要登录Docker,不然Docker image不知道推哪儿。

Docker login

service处理

collectd

./deploy.py Docker push collectd

webui

./deploy.py webui
./deploy.py Docker push webui2

restfulapi, jobmanager,两者因为都是flask框架,所以就合在一个Docker里了。

./deploy.py Docker push restfulapi

配置nginx:

./deploy.py nginx fqdn
./deploy.py nginx config

k8s启动服务:

./deploy.py kubernetes start mysql jobmanager restfulapi webui2 monitor nginx custommetrics

操作后:

kube-system里的pods,会多出collectd,grafana,influxdb,mysql,

image.png

default namespace下的pods:

jobmanager,restfulapi,nginx, webui2等

tips:

  1. 所有的service镜像都在Docker hub上,注意resffulapi和webui2是跟cluster name的,其他的都是公用的。所以比如qjytest这个集群,对应webui2的镜像应该是qjytest_webui2.

  2. 因为大部分images都是公用的,即之前编译后已经存在,所以不用去重新push。但是如果看到status是ImagePullBackOff的话,就可以是image缺失,就需要重新编译以下。例如:

    ./deploy.py Docker push grafana
    ./deploy.py Docker push influxdb
    

当所有service都起来后,通过对应的域名应该是可以访问到网页了。包括http和https

但是没法通过微软账号认证。见下一章