玩转云计算:教你在Akamai Linode上构建IT架构–定义项目

时至今日,选择以云计算方式来运维业务,已经成为大部分情况下的最优选。那么如果要从零开始开发一个新应用,并依托云平台来设计、开发、部害和远维,具体该从何处下手?这一系列文章将介绍如何基于Akamai Linode平台实现这个目标。

场景

假设有一家名叫"Vapor"的公司,这是一家只销售游戏并提供游戏下载的线上公司。该公司原本使用了一家托管服务提供商(MSP)的服务,由于相关服务的体验非常糟糕,他们转为向Akamai寻求帮助。

除了追求更高性能外,Vapor的DevOps团队还希望能有更多实践机会,能够对"表面之下"的东西进行调优,这样整个解决方案就可以重新架构,以适应新的云提供商。

项目分为两个主要阶段:

  1. (关键阶段)对当前平台进行平移(Lift and shift),以最小代价对其进行改进;随后引入监控和管理软件,并创建管道。当前使用的解决方案,其停机时间较长,直接导致了大量收入损失。
  2. 利用Akamai的Kubernetes托管服务(LKE)和计算能力对整个栈进行容器化和现代化。此外,Vapor还计划在不久的将来进驻亚太、欧洲、中东和非洲以及美洲,因此在设计基础架构时应考虑到这一要求。

目前的技术栈

基于PHP和MySQL开发的定制化应用程序,其中包含数千篇文章。

应用程序在负载均衡器之后的八台Web服务器上运行。使用独立主机运行MySQL数据库引擎,游戏数据则存储在200TB的对象存储中。

硬件规格:

  • 8台Web服务器:每台16个CPU内核,64GB内存,200GB SSD存储
    • CPU平均用量为70%
    • 内存用量为80%
    • 平均IOPS为400
  • 数据库服务器:32个CPU内核,128GB内存,500GB SSD存储
    • 数据库约300GB,每季度增大10%
    • 内存用量90%
    • 平均IOPS为5500,偶尔激增至10000 IOPS
  • 负载均衡器
    • 平均每秒1000个请求,偶尔激增至每秒2500个请求
  • 对象存储
    • 目前托管在另一个云提供商平台上

监控和管理由目前的MSP负责,因此在选择监控、访问、安全等技术时,有一个开放的竞争环境。

当前基础设施简单概述

未来目标是什么?

在开始编写任何代码(没错,要做的一切都将用代码完成)之前,我们需要定义项目目标、功能性和非功能性需求,并尝试预测一下未来。

首先是项目的主要目标

  • 改善可用性
  • 相比当前提供商,降低托管成本
  • 提高性能
  • 大规模构建
  • 适应正在进行的全新现代化改建工作
  • 支持全球化运行,并在未来支持边缘计算
  • 提高安全性
  • 更易于运行
  • 提高自动化程度
  • 让开发者更满意

新基础架构布局概述

如图所示,我们的基础架构布局可细分为经典的DT(A)P方法,以及管理和备份账户。

管理账户将运行基础架构运转所需的所有"操作"服务,如监控、构建和部署管道、安全工具、安全访问服务等,我们将为开发/测试和生产工作负载提供专门的开发、测试和生产账户。这样做的目标是使开发、测试和生产账户在规模以外的各方面都完全相同。这将确保运行的所有基础架构和应用测试都能提供真实的结果。

最后,我们将在不同地区使用专用的Akamai Connected Cloud账户,并通过这些账户运行备份软件和灾难恢复基础架构。此外,可能需要的任何Akamai Connected Cloud服务(如虚拟机、对象存储、LKE集群等)也将部署在相应的(DTAP)账户中。

这样做的目的是尽可能将所有环境在物理和逻辑上分开。

整个基础设施将使用代码构建,第一阶段主要使用Terraform和Ansible;到第二阶段,我们将研究使用Kubernetes和应用程序管理工具及管道。具体待定。

相关推荐
工业甲酰苯胺5 小时前
分布式系统架构:服务容错
数据库·架构
Java程序之猿6 小时前
微服务分布式(一、项目初始化)
分布式·微服务·架构
木子Linux8 小时前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
小蜗牛慢慢爬行9 小时前
Hibernate、JPA、Spring DATA JPA、Hibernate 代理和架构
java·架构·hibernate
思忖小下10 小时前
梳理你的思路(从OOP到架构设计)_简介设计模式
设计模式·架构·eit
一个儒雅随和的男子17 小时前
微服务详细教程之nacos和sentinel实战
微服务·架构·sentinel
腾讯云开发者17 小时前
AI时代,需要怎样的架构师?腾讯云架构师峰会来了!
架构
Hello Dam20 小时前
面向微服务的Spring Cloud Gateway的集成解决方案:用户登录认证与访问控制
spring cloud·微服务·云原生·架构·gateway·登录验证·单点登录
AI人H哥会Java1 天前
【Spring】Spring的模块架构与生态圈—Spring MVC与Spring WebFlux
java·开发语言·后端·spring·架构