文档章节

个人服务容器化和基础监控容器化

MrPei
 MrPei
发布于 11/13 17:28
字数 922
阅读 12
收藏 0

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

1.前景

自己比较喜欢玩机器,目前手上有4台常用的机器如下,平常跑一些自己写的小程序还有博客和代理都在上面。

1 1核1G
2 1核2G
3 1核1G
4 2核4G

每次拿到一台新的vps环境安装就是个大问题,上学的时候那会都是完全手动敲命令装,jdk maven Nginx git Python3各种麻烦,尤其是机器格式化了重装很累,后来学着写自动化shell脚本,每次拿到新机器直接上去运行脚本等待安装,但是脚本编写麻烦维护更麻烦,并且软件直接运行在vpn上很容易污染机器。

最近这些年最热的一个词就是容器化,所以我也抽双11结束的时间实现了自己服务“小集群”的容器化。

2. 容器化方案

容器选择最常用的docker,对于容器的管理和编排有三种方案,Kubernetes, Mesos, Swarm 这三种我都在本地的VM上跑过,在工作中接触最多的是k8s,

我曾经尝试过在上述几台机器上搭建一个k8s集群,但后来放弃了,机器配置确实太低,并且结合我目前的使用场景来看,更需要一种轻量级的容器管理方案。

最后可以使用简单的webui管理docker就可以,经过了解有两款还不错的工具,shipyard和portainer。

Github地址如下:

shipyard:https://github.com/shipyard/shipyard

portainer:https://github.com/portainer/portainer

shipyard ui精简而且使用可以的是早在2016年已经停止维护了,作者没有时间和精力维护但是也没人愿意接手所以被废弃,在此向作者ehazlett致敬。

shipyard试用之后确实有很多bug,所以选择了portainer作为后续管理docker的工具。

3. 实施

现在目前自己在使用的服务分类,目前有 Python的爬出采集一些信息,还有kakfa,小的flink集群,MySQL服务和代理服务。

由于代理的特殊性,只能选择aws Tokyo节点,爬虫项目可以放在比较低配的1核1G机器上,kafka放在1核2G的机器上,小型的flink集群的MySQL服务放在2核4G的机器上。

3.1 把以上服务打成docker镜像,推到dockerhub(目前没有使用自己的私有镜像库)

    顺便分享一个精简版的flink1.9.1镜像:https://hub.docker.com/repository/docker/peizhouyu/flink1.9.1

3.2 vps机器重装系统,使用部署脚本统一安装docker 18.0.9,并在aws上启动portainer容器,配置portainer连接到各个机器的docker daemon。

3.3 讲上述已经打成镜像的服务拉到对应容器并启动起来。

至此基本容器化已经完成。

4. 基础监控容器化

之前在使用“物理机“部署的时候做过监控服务,当时的监控方案是在master机器上起Prometheus 和 Grafana,在各个节点上用服务启动 node_exporter

用来监控各个机器的整体信息。

现在已经实现将上述Prometheus监控体现全部容器化,左右一个docker container在各个节点上运行。

 

 

© 著作权归作者所有

MrPei

MrPei

粉丝 8
博文 100
码字总数 47098
作品 0
朝阳
高级程序员
私信 提问
飞天技术汇 | 你用Kubernetes的样子很酷!

如何进行容器化及标准化? 交付中如何快速验证? 多种发布模式如何简单实现? Kubernetes的某些方面存在不合理性,为使用者带来一定的学习和使用成本。 阿里云如何真正打通DevOps流程 阿里云...

阿里云头条
2018/08/17
0
0
最前沿的容器技术有哪些?腾讯、华为、思科等 6 位顶尖专家为你解答!

点击上方“CSDN”,选择“置顶公众号” 关键时刻,第一时间送达! 容器革命已经来临,随着 Docker 拥抱 Kubernetes,容器领域风云变幻,Kubernetes 逐步走强,以 Docker 为代表的容器技术在国...

csdnnews
2017/12/13
0
0
基于Docker一键部署大规模Hadoop集群及设计思路

欢迎关注大数据和人工智能技术文章发布的微信公众号:清研学堂,在这里你可以学到夜白(作者笔名)精心整理的笔记,让我们每天进步一点点,让优秀成为一种习惯! 一、背景: 随着互联网的发展...

李金泽
2018/03/04
0
0
如何掌握 Kubernetes ?

深度剖析 Kubernetes 为了帮助初学者,2018 年,InfoQ 旗下的极客时间,出了一份很有深度的专栏《深度剖析 Kubernetes》。 这份专栏,覆盖度到底如何呢?读它的目录,就可见一斑。我把目录摘...

风尾
2018/10/02
0
0
2017年度盘点丨基础架构演化:从“以资源为中心”到“以应用为中心”的迁移

作者:刘建,搜狗资深架构师,商业平台基础平台负责人,十多年Java相关研发经验,在互联网软件体系结构、分布式计算、面向服务体系结构、用户身份安全等方面有浓厚的兴趣及实践经验。 责编:...

dev_csdn
2018/01/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

hbase错误记录

说什么服务没启动 但是 $ jps 查看又是正常的 然后想到去看日志 $ vim logs/hbase-root-regionserver-hadoop101.log INFO信息停留在:client.ZooKeeperRegistry: ClusterId read in ZooKeep...

天空飘来五个字儿
23分钟前
5
0
类的第一个元素的CSS选择器

我有一堆元素的类名是red ,但是我似乎无法使用以下CSS规则选择class="red"的第一个元素: .red:first-child { border: 5px solid red; } <p class="red"></p> <div class="red"></div> 该选......

技术盛宴
30分钟前
4
0
如何将重复数据突出显示?

将表格中一列数据中重复的,使用特殊颜色突出显示或者使用一些符号标记出来。 例如: 一个供应商,可以邀请别的供应商加入成为联合体,报表要显示所有供应商,然后供应商最后一列显示所有联合...

泡泡糖儿
32分钟前
4
0
python将html的百分号转为对应的编码

import redef trans(x): # print(x.group()) return bytes.fromhex(x.group()[2:].decode("utf-8"))data = str("你好".encode("utf-8"))print(data)data = re.subn(b"\\\\x[0-9......

鬼上身跳不过门槛
42分钟前
4
0
如何在nohup下放置已经运行的进程?

我有一个已经运行了很长时间并且不想结束它的进程。 我怎么把它放在nohup下(也就是说,即使关闭终端,如何让它继续运行?) #1楼 假设由于某种原因, Ctrl + Z也无法正常工作,转到另一个终...

javail
45分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部