65 lines
6.4 KiB
Markdown
65 lines
6.4 KiB
Markdown
---
|
||
title: "CTP Topic 7 SaaS Landing Zone Design"
|
||
type: source
|
||
tags: [AWS, Landing-Zone, SaaS, CTP, Multi-Account, Terraform, Jenkins]
|
||
date: 2026-04-14
|
||
last_updated: 2026-05-06
|
||
---
|
||
|
||
## Source File
|
||
- [[raw/Cloud & DevOps/Public-Cloud-Learning-Sessions/01_AWS-Landing-Zone/ctp-topic-7-saas-landing-zone-design.md]]
|
||
|
||
## 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-real-life-experience-moving-production-services-i]] ← uses ← [[ctp-topic-7-saas-landing-zone-design]]
|
||
- [[ctp-topic-31-network-segregation-and-secure-access-to-the-new-aws-landing-zones]] ← related_to ← [[ctp-topic-7-saas-landing-zone-design]]
|
||
- [[ctp-topic-11-ad-integration-and-login-using-ad-accounts]] ← 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 反映早期设计原貌,属于设计演进而非冲突
|