在 AWS 上執行 Dell PowerProtect 備份的組織面臨一個經常性挑戰:多設備生態系統——PPDM(PowerProtect Data Manager)、DDVE(Data Domain Virtual Edition)和 DDMC(Data Domain Management Center)——需要仔細且有序的佈建,這很難在不同區域和帳戶之間一致地重複。

本文介紹一種使用 Terraform 進行基礎設施佈建,以及使用 AWS Step Functions 進行部署後協調,以自動化 Dell PowerProtect 在 AWS 上部署的方法。此處描述的模式適用於任何在 AWS 上執行 Dell 備份設備,並希望從手動或半自動化部署轉向完全編碼、可重複框架的企業。

為什麼要在 AWS 上自動化 Dell 備份?

Dell PowerProtect 元件在 AWS 上通常是從 Marketplace AMI 以 EC2 執行個體的形式部署。雖然部署本身很直接,但挑戰在於之後的步驟:

  • DDMC 需要互動式首次登入精靈(EULA 接受、密碼變更、檔案系統設定)
  • PPDM 需要 REST API 驅動的設定(授權、NTP、憑證設定、原則建立)
  • DDVE 必須透過協調的 API 呼叫同時向 PPDM 和 DDMC 註冊
  • DNS 解析 必須包含正向和反向記錄——PPDM 在接受整合合作夥伴之前會驗證雙向 DNS
  • 憑證 需要從第一天起就進行安全儲存和輪換

手動進行此程序會導致設定漂移、產生未記錄的部落知識,且無法擴展。基礎設施即程式碼可消除這些風險。

參考架構

一個生產級的 Dell PowerProtect 自動化框架在 AWS 上橫跨四層:

┌─────────────────────────────────────────────────────────────────────┐
│                    Layer 1: Terraform - Infrastructure                │
│  VPC / Subnets / Security Groups / Route53 / IAM / KMS / Secrets    │
├─────────────────────────────────────────────────────────────────────┤
│                    Layer 2: Terraform - Appliance Deployment          │
│  PPDM EC2 Instance / DDVE EC2 Instance / DDMC EC2 Instance          │
│  EBS Volumes / Network Interfaces / Instance Profiles                │
├─────────────────────────────────────────────────────────────────────┤
│                    Layer 3: Step Functions - Configuration            │
│  Lambda: Configure DDMC (SSH)                                        │
│  Lambda: Configure PPDM (REST API)                                   │
│  Lambda: Integrate DDVE ↔ PPDM/DDMC (REST API)                      │
│  Lambda: Credential Rotation (Secrets Manager)                       │
├─────────────────────────────────────────────────────────────────────┤
│                    Layer 4: Operational Monitoring                    │
│  EventBridge → Monitor Lambda → DynamoDB → ITSM Integration         │
└─────────────────────────────────────────────────────────────────────┘

Enter fullscreen mode Exit fullscreen mode

每一層都有明確的職責邊界,且其中一層的變更不會不可預測地波及到其他層。

第一層:網路與安全基礎

VPC 與子網路設計

Dell 備份設備在特定連接埠(2051、2052、3009 用於 Data Domain 通訊協定,443 用於管理 API)進行通訊。您的網路模組應佈建:

  • 為備份設備專用的 VPC(或現有 VPC 內的子網路範圍)
  • 跨多個可用區域的私有子網路以確保復原能力
  • 具有細粒度輸入/輸出規則的安全群組,範圍限定於 Dell 通訊協定連接埠
  • NAT 閘道存取,用於 Marketplace 授權驗證和更新

DNS:隱藏的需求

PPDM 常見的部署失敗是因 DNS 解析問題導致整合被拒絕。PPDM 會執行雙向 DNS 驗證——它會將 DDVE 主機名稱解析為 IP,然後將該 IP 反向解析回主機名稱,並期望兩者相符。

您必須自動化兩者:

  • 在 Route53 私有託管區域中的正向 DNS(A 記錄)
  • 在反向查詢區域中的反向 DNS(PTR 記錄)(例如 10.in-addr.arpa

如果沒有 PTR 記錄,PPDM 會失敗並出現如「網路驗證失敗」或「無法解析 FQDN/IP 位址」的錯誤。這沒有被充分記錄,且許多團隊會措手不及。

# Terraform reverse DNS zone and PTR record
resource "aws_route53_zone" "reverse" {
  name = "10.168.192.in-addr.arpa"
  vpc {
    vpc_id = aws_vpc.backup.id
  }
}

resource "aws_route53_record" "ppdm_ptr" {
  zone_id = aws_route53_zone.reverse.zone_id
  name    = "15.10.168.192.in-addr.arpa"
  type    = "PTR"
  ttl     = 300
  records = ["ppdm.backup.internal"]
}

Enter fullscreen mode Exit fullscreen mode

IAM 與密鑰管理

每個設備角色都應遵循最小權限原則:

  • PPDM 執行個體角色:存取 Secrets Manager(自己的憑證)、S3(備份目標)、SSM(用於代理程式部署)
  • DDVE 執行個體角色:用於加密磁碟區的 KMS 解密、用於輪換的 Secrets Manager
  • DDMC 執行個體角色:用於參數擷取的 SSM、用於探索的 EC2 DescribeInstances

從一開始就將初始和輪換後的憑證儲存在 AWS Secrets Manager。避免將憑證嵌入 EC2 使用者資料或依賴執行個體 ID 作為預設密碼。

第二層:使用 Terraform 部署設備

每個 Dell 設備都是從 Marketplace AMI 佈建的 EC2 執行個體。主要考量事項:

PPDM 部署

  • 執行個體類型:m5.xlarge 或更大(最低 4 個 vCPU、16 GB RAM)
  • 根磁碟區:100 GB gp3
  • 根據目錄大小的額外資料磁碟區
  • 用於 DNS 一致性的彈性 IP 或穩定的私有 IP

DDVE 部署

  • 執行個體類型:儲存最佳化(m5.2xlarger5.xlarge,視容量層級而定)
  • 多個 EBS 磁碟區用於中繼資料和資料(DDVE 使用特定的磁碟區佈局)
  • 用於重複資料刪除工作負載的高 IOPS 設定
  • 對於大型部署,請考慮 io2 Block Express

DDMC 部署

  • 執行個體類型:m5.large(作為管理平面,需求較輕)
  • 用於其內部資料庫的資料磁碟區
  • 對其將管理的所有 DDVE 執行個體的網路存取
# Parameterized appliance deployment
module "ppdm" {
  source         = "./modules/dell-appliance"
  appliance_type = "ppdm"
  ami_id         = var.ppdm_ami_id
  instance_type  = var.ppdm_instance_type
  subnet_id      = module.network.private_subnet_ids[0]
  security_groups = [module.network.ppdm_sg_id]
  iam_profile    = module.iam.ppdm_instance_profile

  tags = {
    Application = "dell-backup"
    Component   = "ppdm"
    Environment = var.environment
  }
}

Enter fullscreen mode Exit fullscreen mode

關鍵原則:Terraform 處理「是什麼」(基礎設施狀態),但不處理「如何做」(設備內部設定)。這就是 Step Functions 的用武之地。

第三層:使用 Step Functions 進行部署後設定

為什麼不使用 Terraform Provisioners?

Terraform provisioners(remote-execlocal-exec)很誘人,但對於多步驟設備設定來說有問題:

  • 它們在 terraform apply 時執行,且無法獨立重試
  • 它們沒有內建狀態機器來處理具有等待條件的順序步驟
  • 失敗會使 Terraform 狀態處於不一致的位置
  • 它們破壞了宣告式模型——基礎設施與執行階段行為耦合

AWS Step Functions 提供了更好的解決方案:具有重試、逾時、分支和獨立執行的可見狀態機器。

設定 Lambda 函式

DDMC 設定(基於 SSH)

DDMC 的首次登入程序是一個互動式 SSH Shell 精靈。使用 Paramiko(Python SSH 函式庫)的 Lambda 函式可自動化此程序:

  1. 透過 SSH 連線到 DDMC(從 Secrets Manager 取得初始預設憑證)
  2. 透過模式比對終端機輸出接受 EULA 提示
  3. 將 sysadmin 密碼變更為產生的值
  4. 完成設定精靈(時區、主機名稱、網路確認)
  5. 以定義的配額建立備份檔案系統
  6. 將新憑證儲存在 Secrets Manager 中

關鍵挑戰:精靈提示文字會因 DDMC 韌體版本而異。使用逾時和回退偵測建立防禦性模式比對。

PPDM 設定(基於 REST API)

PPDM 在啟動後於連接埠 443 公開 REST API,但在 EC2 進入「執行中」狀態後,API 通常需要 3-8 分鐘才會回應。您的 Lambda 需要:

  1. 以指數退避輪詢 PPDM API 健康狀態端點
  2. 使用預設憑證進行驗證
  3. 透過 API 接受 EULA
  4. 變更管理員密碼
  5. 設定 NTP 設定
  6. 啟用授權
  7. 建立預設保護原則

DDVE-PPDM-DDMC 整合

整合 Lambda 協調跨設備註冊:

  1. 向 PPDM API 驗證
  2. 在 PPDM 中新增 DDVE 作為儲存目標(需要 DDVE 憑證)
  3. 向 DDMC API 驗證
  4. 在 DDMC 中註冊 DDVE 執行個體
  5. 透過狀態檢查驗證整合
  6. 執行測試備份以確認端到端連線

Step Function 定義

{
  "StartAt": "WaitForAppliances",
  "States": {
    "WaitForAppliances": {
      "Type": "Wait",
      "Seconds": 300,
      "Next": "ConfigureDDMC"
    },
    "ConfigureDDMC": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:...:configure-ddmc",
      "Retry": [
        {
          "ErrorEquals": ["States.ALL"],
          "IntervalSeconds": 30,
          "MaxAttempts": 3,
          "BackoffRate": 2.0
        }
      ],
      "Next": "ConfigurePPDM"
    },
    "ConfigurePPDM": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:...:configure-ppdm",
      "Retry": [
        {
          "ErrorEquals": ["States.ALL"],
          "IntervalSeconds": 60,
          "MaxAttempts": 5,
          "BackoffRate": 2.0
        }
      ],
      "Next": "IntegrateDDVE"
    },
    "IntegrateDDVE": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:...:integrate-ddve",
      "Retry": [
        {
          "ErrorEquals": ["States.ALL"],
          "IntervalSeconds": 30,
          "MaxAttempts": 3,
          "BackoffRate": 2.0
        }
      ],
      "End": true
    }
  }
}

Enter fullscreen mode Exit fullscreen mode

第四層:營運監控與 ITSM 整合

部署完成後,Dell 備份設備需要主動監控。無伺服器監控模式效果良好:

監控架構

  1. EventBridge 排程規則——每 10 分鐘觸發一次監控 Lambda
  2. 監控 Lambda——向 DDMC REST API 驗證,擷取 DDVE 健康狀態和作用中警示
  3. DynamoDB 資料表——儲存目前的警示狀態以進行去重複和追蹤
  4. DynamoDB Streams——在有新的或變更的警示時觸發 ITSM Lambda
  5. ITSM Lambda——格式化事件並轉送至您的事件管理系統(ServiceNow、Jira Service Management 等)

警示事件結構描述

將您的事件格式標準化以供下游使用:

{
  "event_id": "unique-uuid",
  "source": "dell-backup-monitor",
  "severity": "critical",
  "appliance": "ddve-01.backup.internal",
  "alert_name": "Appliance Not Responding",
  "timestamp": "2026-07-15T10:30:00Z",
  "region": "eu-west-1",
  "action_required": "Investigate DDVE connectivity"
}

Enter fullscreen mode Exit fullscreen mode

事件封存

將所有事件以結構化路徑封存到 S3 以進行稽核和合規:

s3://backup-events/{service}/{account_id}/{region}/{date}/{event_id}-{severity}.json

Enter fullscreen mode Exit fullscreen mode

大規模 EC2 備份納管

最後的自動化步驟是將 EC2 執行個體納入 Dell Backup 保護:

  1. 基於標籤的定位——標記為 Backup: enabled 的執行個體會被發現
  2. SSM 自動化——AWS Systems Manager 在無需 SSH 存取的情況下安裝 PPDM 代理程式
  3. 代理程式註冊——代理程式使用預先設定的伺服器端點向 PPDM 註冊
  4. 原則指派——根據工作負載標籤指派保護原則(例如 BackupPolicy: daily-30day-retention
  5. 健康狀態驗證——安裝後檢查確認代理程式與 PPDM 的連線

將備份納管作為獨立的自動化——不要將其與一般 EC2 生命週期管理耦合。備份原則的變更獨立於作業系統修補或擴展事件。

常見陷阱及其避免方法

陷阱 影響 解決方案
缺少 PTR 記錄 PPDM 整合靜默失敗 在您的網路模組中自動化反向 DNS
預設密碼未變更 安全性漏洞 在首次啟動時輪換,並儲存在 Secrets Manager 中
使用 Terraform provisioners 進行設定 脆弱、無法重試的部署
步驟之間沒有健康檢查 在設備未就緒時嘗試整合 在每個 Lambda 中實作帶有退避的輪詢
將備份與作業系統管理耦合 一方的變更會破壞另一方 分離 Terraform 模組和管道
沒有監控監控系統 靜默警示失敗 在 Lambda 錯誤指標上設定 CloudWatch 警示

摘要

在 AWS 上自動化 Dell PowerProtect 需要分層思考:

  1. Terraform 用於基礎設施——VPC、EC2、IAM、DNS(包括反向)、KMS、Secrets Manager
  2. Step Functions 用於協調——透過 Lambda 對設備進行順序、可重試的設定
  3. EventBridge + Lambda 用於監控——主動健康檢查與 ITSM 整合
  4. SSM 用於納管——在無需 SSH 存取的情況下大規模部署代理程式

此模式清晰地分離了關注點:Terraform 擁有狀態、Step Functions 擁有工作流程、Lambda 擁有設備特定邏輯。這種分離使每一層都能獨立測試、更新和偵錯。

對於目前在 AWS 上手動部署 Dell 備份的團隊而言,採用這種分層自動化方法可消除設定漂移、改善安全態勢,並在無需額外工程工作量的情況下擴展至各個區域。


Alpesh Kumbhare 是 Atos 業務的雲端架構師,專精於 AWS 基礎設施自動化和企業資料保護解決方案。請在 LinkedIn 上與他聯繫。