Rex Chow's Blog

分享一些生活感悟/代码/填坑手册

改造原因

由于原有MDM系统部署结构为使用单一EC2形式, 通过docker run的形式直接部署的, 并且各个模块间通过指定固定IP的方式配置, 存在较大弊端和隐患, 因此需要对现有MDM进行AWS云上架构适应性改造, 相关对比表格如下:

改造前 改造后(测试环境) 是否更优解
运行于单一EC2, 所需节点配置较高 以多个m5.xlarge(暂定)节点分散负载
运行于单一EC2, 存在单点故障的可能 多节点负载应用, 避免单点故障
可运行于多节点, 但需指定每个节点的IP 通过ELB对服务进行注册, 避免IP变动引发服务不可用
如服务容器异常, 需人工登录处理 ECS服务自托管, 不需要人工干预, 容器挂掉自动拉起
容器在实例重启后可能无法正常启动 不依赖EC2环境, 如某个EC2实例出现问题, 可通过Auto Scaling 重新拉起新EC2, 快速恢复业务
对单服务多容器支持不好, 需指定容器对应宿主机端口 ELB可以支持单服务多容器的方式部署, 且自动分发流量, 不需要配置多个地址
单一服务器成本, 可按需或购买RI 增加了ECS/ELB/EFS/Redis使用费用, 会导致费用上升1 ×
阅读全文 »

前情概要

有一台EC2(以下简称问题实例), 系统盘数据50G, 挂载了一个2T, 一个3T的数据盘, 这两个数据盘以LVM形式挂载到/data目录且该问题实例并未创建任何快照或AMI, 由于用户不熟悉环境, 下载了一个超大文件到/home目录, 将系统写死, 发生OOM, 并后续执行了强制重启操作, 启动时报错booting from hard disk 0...且显示error 15, 系统无法启动

阅读全文 »

什么是DevOps?

来源: DevOps - 维基百科,自由的百科全书

DevOpsDevelopment和Operations的组合词)是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。通过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

阅读全文 »