【AWS】可追踪性系统AWS迁移设计

以下是关于2022年末开始实施的追溯能力系统AWS迁移项目的设计、实施等各方面的设想,同时我还将记录下基础设施设计的要点备忘。

◆背景
追踪能够记录药品供应的采购商、销售商等信息,并记录其流通路径和位置等信息的追溯系统。
目前该系统正在运行于NTT.com Enterprise Cloud 1.0(ECL1.0),但由于ECL1.0服务将于2023年12月1日停止提供,因此需要在今年内迁移至AWS。

湧永.jpg

◆问题与设计要点
【问题】
各个门店使用手持终端向各个交易对象下订单。每个门店大约有2000个手持终端,并且每个终端都有一个固定的IP地址。我们可以要求客户(总部)将服务器的IP地址注册到各个门店中,但这需要与每个门店的负责人协调,影响范围太大,并且还会对日常的订单业务产生影响。
此外,总部的电脑也需要访问该服务器,但与我们使用的域名相对应的IP地址是由「お名前.com」注册和管理的,因此我们无法从这边进行更改。

【解决方案】
我们选择使用Network Load Balancer(NLB),它具备处理每秒数百万个请求的出色能力,并且每个可用区的负载均衡器节点可以使用该网络接口获取静态IP地址。我们保留了与当前固定IP地址类似的IP地址,用作NLB的IP地址。由于从手持终端到AWS服务器之间已经使用了专用云线路进行安全通信,因此在VPC中,我们需要使用“内部”NLB来负载均衡不向互联网公开的子网内部的服务器。
因此,我们可以在保持手持终端注册的IP地址不变的情况下继续进行相应的处理。

在会员网站VPC上,通过NLB访问会员服务器,目前(迁移前)在数据中心中,通过FortiGate作为Web反向代理服务器运行,安全性非常好。
AWS迁移后,NLB本身无法设置安全组,也没有第七层(L7)应用层的安全措施,因此迁移后的安全性令人担忧。

【解決方法】
NLB本身无法应用安全组,需要设置目标组的EC2安全组。如果希望在第7层(L7)应用层采取与现行系统相同的安全防护措施,可以将NLB目标设置为ELB,并通过ELB路由到会员服务器进行响应。由于ELB可以应用AWS WAF,因此可以采取更强大的安全防护措施。
AWS WAF可以对Web应用程序的通信进行过滤、监视和阻止,并且与一般防火墙或IDS/IPS不同,它可以在应用层次上分析通信内容,并检测和阻断与特定条件匹配的通信。

【任务】
目前,会员服务器正在使用Debian6操作系统,但该服务器的应用程序支持是外包的,基于成本的原因,操作系统必须保持目前的状态。
然而,我们在AWS Marketplace网站上确认,目前仅提供Debian 10和11的版本。以下是获取的AMI列表(指定地区为东京)。
$ aws ec2 describe-images –owners 379101102735 –filters “Name=architecture,Values=x86_64” “Name=name,Values=debian-jessie-” “Name=root-device-type,Values=ebs” “Name=virtualization-type,Values=hvm” –output table –query ‘sort_by(Images, &CreationDate)[].[CreationDate,Name,ImageId]’ –include-deprecated –region ap-northeast-1
【DescribeImages获取结果】
| 2015-04-26T00:35:19.000Z | debian-jessie-amd64-hvm-2015-04-25-23-22-ebs | ami-ce5594ce |
| 2015-06-07T13:22:28.000Z | debian-jessie-amd64-hvm-2015-06-07-12-27-ebs | ami-e624fbe6 |
| 2016-02-19T14:58:10.000Z | debian-jessie-amd64-hvm-2016-02-17-ebs | ami-899091e7 |
| 2016-04-03T13:18:55.000Z | debian-jessie-amd64-hvm-2016-04-03-ebs | ami-d7d4c5b9 |
| 2016-09-19T15:39:44.000Z | debian-jessie-amd64-hvm-2016-09-19-ebs | ami-1f4a9a7e |
| 2016-11-14T14:27:10.000Z | debian-jessie-amd64-hvm-2016-11-13-1356-ebs | ami-50ed4631 |
| 2017-01-15T12:44:31.000Z | debian-jessie-amd64-hvm-2017-01-15-1221-ebs | ami-dbc0bcbc |
没有旧版本的Debian 6。

【解决方法】
使用Amazon EC2的VM Import功能,可以将虚拟化环境中的虚拟机(VM)导入到Amazon EC2作为EC2实例使用。如果要在Amazon EC2上使用虚拟机,则首先需要从虚拟化环境中导出,然后将其导入到Amazon EC2作为Amazon Machine Image(AMI)或实例。

通过以下步骤,成功地创建了Debian6的EC2实例:
1. 构建Debian6的VMWare服务器,并获取VM镜像。
2. 将VM镜像上传到Amazon S3,并使用VM Import功能创建EC2 AMI。
3. 使用创建的EC2 AMI启动Debian6的EC2实例。

以上是创建Debian6的EC2实例的一种解决方法。

广告
将在 10 秒后关闭
bannerAds