6.2 KiB
6.2 KiB
title, type, tags, date
| title | type | tags | date |
|---|---|---|---|
| CTP Topic 7 SaaS Landing Zone Design | source | 2026-04-14 |
Source File
Summary(用中文描述)
- 核心主题:SAS(生产)Landing Zone 的顶层设计——采用单一 Landing Zone 统一承载所有产品组,而非按产品组(PG)分别构建,以降低开销和成本
- 问题域:企业多账户 AWS 生产环境下的账户结构设计、共享基础设施规划、自动化部署流水线及远程安全接入方案
- 方法/机制:核心账户(Shared/Logs/Security)提供集中 AMI/Jenkins/日志/IAM 角色;基线账户(Network/DNS/AD)支撑网络互联和身份认证;共享服务账户(Software Factory/Cyber/ARC/Monitoring)向产品账户提供内部生产服务;Terraform IaC + GitHub/Jenkins CI/CD 实现自动化部署;Checkpoint → Pulse VPN 实现远程安全接入
- 结论/价值:确立了 SAS LZ 的四大账户层级架构,以及 Terraform + Jenkins + Lambda + ECS 的端到端自动化部署路径
Key Claims(用中文描述)
- SAS Landing Zone 采用单一 Landing Zone 承载所有产品组,区别于 dev labs 中按产品组各自构建 Landing Zone 的模式,以减少开销和成本
- 核心账户(Core Accounts)包含 Shared(托管 AMI + 主 Jenkins 服务器)、Logs(集中日志账户,仅安全团队可写,产品团队只读自身日志)和 Security(托管 IAM 角色)三个子账户
- 主 Jenkins 服务器通过 Lambda 函数触发各账户内的 Jenkins slave,禁止将主 Jenkins 直接暴露给任务或凭证,从而增强安全性
- 基线账户(Baseline Accounts)包括 Network 账户(区域级 Transit Gateway + Checkpoint Appliance)、DNS 账户(Route 53,每个产品拥有独立托管区)和 Active Directory 账户(双 AD 节点用于域加入和资源访问控制)
- 共享服务账户(Shared Services Accounts)提供 Software Factory(45 个 hub + Octane Hub + Artifactory)、Cyber(Qalis)、ARC Site 和 Monitoring(OBM/Sitescope)服务
- 产品账户(Product Accounts)中,工作负载置于私有子网,通过公有子网的负载均衡器和互联网网关对外暴露;WAF 监控入站流量,CloudFront 可选作为 CDN
- 自动化部署:每个账户对应独立 GitHub 仓库,代码变更通过 GitHub Hook 触发 Jenkins → Management VPC → Lambda → ECS Cluster 链路执行部署;Staging 环境测试后才部署生产
- 远程访问从 Checkpoint VPN 迁移至 Pulse VPN,要求操作员使用 VPN 客户端并通过 AD 认证;未来计划使用 SD1 替换部分网络组件
Key Quotes
"The SAS landing zone will use a single landing zone for all the product groups." — SAS LZ 的核心设计原则:单一 Landing Zone 服务所有产品组 "The workload itself is going to be under private subnet." — 产品账户工作负载必须部署于私有子网
Key Concepts
- Landing-Zone-Architecture:AWS 多账户基础设施部署单元,本文档定义了 SAS LZ 的账户层级体系(Core/Baseline/Shared Services/Product Accounts)
- Active-Directory-Integration:通过双 AD 节点实现域加入和资源访问控制,属于 AWS LZ 身份认证基线服务
- Transit-Gateway:区域级 Transit Gateway 连接所有账户,Checkpoint Appliance 按标签监控流量,属于 Network 账户核心组件
- WAF-Web-Application-Firewall:Web 应用防火墙,监控入站流量,属于产品账户入站安全层
- Private-Subnet-Architecture:工作负载部署于私有子网,通过负载均衡器和互联网网关对外暴露,属于产品账户网络架构原则
- Terraform-IaC:使用 Terraform 实现 IaC 自动化,每个账户拥有独立 GitHub 仓库管理 Terraform 代码
Key Entities
- Gruntwork:提供 Landing Zone 参考架构和 Terraform 模块,SAS LZ 基于 Grant Work 架构构建
- TerraGrant(TerraGrunt):用于简化 Terraform 状态管理和跨账户部署的工具
- Jenkins:主 Jenkins 服务器托管于 Shared 账户,通过 Lambda 触发各账户 Jenkins slave;每个账户配置独立 Jenkins 服务器
- Checkpoint:Checkpoint Appliance 部署于 Network 账户,按标签监控跨账户流量(互联网/On-prem);当前远程访问使用 Checkpoint VPN(正迁移至 Pulse)
- Pulse-VPN:新一代远程访问 VPN,通过 AD 认证,要求操作员使用 VPN 客户端
- CloudFront:CDN 服务,可选部署于产品账户入站链路
- Qalis:Cyber 共享服务账户中的网络安全服务
- OBM(Operations Bridge Manager):Monitoring 共享服务账户中的监控平台
Connections
- ctp-topic-35-aws-landing-zone-design-refresher-saas-labs ← extends ← ctp-topic-7-saas-landing-zone-design
- ctp-topic-1-gruntwork-landing-zone-architecture ← extends ← ctp-topic-7-saas-landing-zone-design
- ctp-topic-14-octane-hub-on-aws ← uses ← ctp-topic-7-saas-landing-zone-design
- ctp-topic-31-network-segregation-and-secure-access ← related_to ← ctp-topic-7-saas-landing-zone-design
- ctp-topic-11-ad-integration-and-login ← related_to ← ctp-topic-7-saas-landing-zone-design
- ctp-topic-19-configuring-dns-within-aws-lzs ← related_to ← ctp-topic-7-saas-landing-zone-design
- ctp-topic-29-cloud-monitoring-saas-lz-accounts ← related_to ← ctp-topic-7-saas-landing-zone-design
Contradictions
- 与 ctp-topic-35-aws-landing-zone-design-refresher-saas-labs 的关系:
- 冲突点:ctp-topic-7 定义了 SAS LZ 的详细架构(Core/Baseline/Shared Services/Product 四层账户体系),ctp-topic-35 补充了近期变更(网络分段阻断直接连通性;Checkpoint VPN 迁移至 Pulse VPN)
- 当前观点(ctp-topic-35):网络分段策略阻断对 SaaS 工作负载的直接连通性;入站流量通过 Network 账户 Checkpoint 重新路由
- 对方观点(ctp-topic-7):产品账户的公有子网通过负载均衡器和互联网网关对外暴露;远程访问通过 Checkpoint VPN
- 结论:两个文档描述的是不同时间点的设计状态——ctp-topic-35 反映近期架构变更,ctp-topic-7 反映早期设计原貌,属于设计演进而非冲突