目次
AWS Systems Manager for SAP 完全ガイド v2.0
SAP HANA・S/4HANA 運用管理・自動化プラットフォーム
概要
AWS Systems Manager for SAP は、AWS 上で稼働する SAP HANA データベースと SAP NetWeaver・SAP S/4HANA アプリケーションの運用管理を一元化・自動化するサービス です。SAP ワークロードの自動検出・パッチ適用・バックアップ・ヘルス監視・パフォーマンス分析をシームレスに実行し、SAP システムの可用性・セキュリティ・効率性を向上させます。
初心者向けメモ:AWS Systems Manager for SAP は「SAP HANA・S/4HANA の運用タスク(バックアップ・パッチ・ヘルスチェック)を AWS コンソールから一元管理するサービス」です。複雑な SAP 運用の手作業を自動化し、ダウンタイム削減・リスク低減を実現します。
Systems Manager for SAP が解決する課題
| 課題 | 従来の方法 | Systems Manager for SAP での解決 |
|---|---|---|
| 複数の SAP システム管理が散在 | SAP Cockpit・SAP Solutions Manager・HANA Studio を個別に操作。設定が一元化されていない | AWS Systems Manager コンソールで全 SAP システムを一元管理。SAP Solution Manager との連携 |
| SAP HANA バックアップの複雑さ | テープ・NFS への手動バックアップ。容量管理・保存期間管理が煩雑 | AWS Backint Agent で S3 への自動バックアップ。Lifecycle ポリシーで自動アーカイブ |
| パッチ適用の時間・リスク | 手動パッチ適用。ダウンタイム・テスト期間が長い。多数システムへの適用が負担 | Systems Manager Patch Manager で自動・一括適用。Automation ドキュメントで停止→パッチ→起動を自動化 |
| SAP インベントリ・ディスカバリーの困難 | Spreadsheet で手動管理。SID・バージョン・コンポーネント情報がバラバラ | Systems Manager Inventory で自動検出・一元記録 |
| SAP パフォーマンス・ヘルス監視が限定的 | HANA Cockpit・OS メトリクスを個別確認。統合ダッシュボードなし | Systems Manager と CloudWatch 統合で SAP メトリクス・OS メトリクスを統合監視 |
| SAP Disaster Recovery・フェイルオーバーの手作業 | 手動で複数ステップ実行。エラー・漏れが発生しやすい | Systems Manager Automation で DR フローを完全自動化・テスト実施 |
| AWS と SAP ネイティブツールの統合困難 | SAP Solutions Manager・HANA Studio・AWS コンソールを並行使用 | Systems Manager for SAP が AWS ネイティブ・SAP ネイティブ双方を統合 |
主な特徴
| 特徴 | 説明 |
|---|---|
| SAP ランドスケープの自動検出 | AWS アカウント内の SAP HANA・NetWeaver・S/4HANA を自動検出・登録。SID・バージョン・コンポーネント情報を一元記録 |
| AWS Backup との統合 | SAP HANA バックアップを AWS Backup で一元管理。バックアップポリシー・保存期間・リストア操作をコンソールから実施 |
| Backint Agent for SAP HANA | S3 への効率的なバックアップ。テープ不要・容量制限なし・Lifecycle で自動アーカイブ可能 |
| SAP パッチ管理の自動化 | Patch Manager で SAP HANA・NetWeaver パッチを自動検出・適用。Automation で停止→パッチ→起動をオーケストレーション |
| CloudWatch 統合 | SAP HANA のメトリクス・ログ・イベントを CloudWatch に自動送信。統合ダッシュボード・アラーム・Logs Insights 分析が可能 |
| ヘルス・パフォーマンス監視 | SAP メモリ使用率・ディスク I/O・テーブルスペース・レプリケーション遅延をリアルタイム監視 |
| 複数 SAP System の一括運用 | Patch Policy で組織全体(Organizations)の複数 SAP システムへ統一ポリシー適用 |
| AWS Launch Wizard for SAP との統合 | SAP HANA・S/4HANA のデプロイから運用まで End-to-End 自動化 |
| SAP Solution Manager との連携 | Systems Manager for SAP が SAP Solutions Manager とネイティブ統合。SAP ネイティブツール活用も可能 |
| コンプライアンス・監査 | CloudTrail・AWS Config で全操作を記録。SAP バックアップ・パッチ適用状態をコンプライアンス監査 |
アーキテクチャ
graph TB
subgraph "SAP Systems on EC2"
HANA["SAP HANA Database<br/>(primary・replica)"]
NetWeaver["SAP NetWeaver<br/>(Application Server)"]
S4HANA["SAP S/4HANA<br/>(ERP・CRM・SCC)"]
GW["SAP Gateway"]
end
subgraph "AWS Systems Manager for SAP"
Discovery["Automated Discovery<br/>(SID・バージョン・コンポーネント)"]
Inventory["SAP Inventory<br/>(インスタンス・DB・アプリケーション)"]
Health["Health Monitoring<br/>(メモリ・CPU・ディスク・レプリケーション)"]
Patch["Patch Management<br/>(SAP パッチ検出・適用)"]
end
subgraph "Backup & Recovery"
BackintAgent["Backint Agent<br/>for SAP HANA"]
S3["S3<br/>(バックアップストレージ)"]
AWSBackup["AWS Backup<br/>(バックアップ管理)"]
end
subgraph "Automation & Orchestration"
SSMAutomation["Systems Manager Automation<br/>(Runbook:停止・パッチ・起動)"]
EventBridge["EventBridge<br/>(スケジュール・イベントトリガ)"]
Lambda["Lambda<br/>(カスタムロジック)"]
end
subgraph "Monitoring & Analytics"
CloudWatch["CloudWatch<br/>(メトリクス・ログ・ダッシュボード)"]
Logs["CloudWatch Logs Insights<br/>(SAP ログ分析)"]
SNS["SNS<br/>(アラート・通知)"]
end
subgraph "Integration"
SAPSolMan["SAP Solutions Manager<br/>(SAP ネイティブ連携)"]
SAPLaunchWizard["AWS Launch Wizard for SAP<br/>(デプロイメント・最適化推奨)"]
end
HANA --> Discovery
NetWeaver --> Discovery
S4HANA --> Discovery
GW --> Discovery
Discovery --> Inventory
Inventory --> Health
HANA --> BackintAgent
BackintAgent --> S3
S3 --> AWSBackup
Health --> CloudWatch
Patch --> SSMAutomation
SSMAutomation --> EventBridge
EventBridge --> Lambda
CloudWatch --> Logs
CloudWatch --> SNS
Inventory --> SAPSolMan
Health --> SAPLaunchWizard
style Discovery fill:#ff9999
style Inventory fill:#99ccff
style Health fill:#99ff99
style AWSBackup fill:#ffcc99
コアコンポーネント
1. SAP ランドスケープ自動検出(Automated Discovery)
AWS アカウント・複数リージョン内の SAP システムを自動検出・登録。
検出対象:
SAP HANA Database:
- Instance Name(HANA01 等)
- System ID(HDB・PRD・DEV等)
- Version(2.0・1.0)
- Mode(Single/Multi-node、Stand-alone/Replicated)
- HA 構成(System Replication Status)
SAP NetWeaver / S/4HANA:
- System ID(ERP・CRM・BW等)
- Instance Number(00・01・10等)
- Kernel Version
- Release(7.50・7.52等)
- Gateway Instance
- Dialog Instance
Components:
- Batch Server
- Web Dispatcher
- Router
- Message Server
自動検出の仕組み:
- Systems Manager Agent(EC2 インスタンスにインストール)がローカル検出
- SAP レジストリ・サービスデータから SID・バージョン読み取り
- CloudWatch Logs に検出情報を送信
- Systems Manager がメタデータを統一保存
CLI 例:
# SAP ランドスケープ検出の開始
aws ssm-sap register-application \
--application-id my-erp-system \
--application-type ERP \
--instances i-1234567890abcdef0 \
--sap-instance-number "00" \
--sid "ERP" \
--environment "Production"
# 検出された SAP アプリケーション一覧
aws ssm-sap list-applications \
--filters Name=ApplicationType,Values=HANA
2. SAP HANA バックアップ(Backint Agent)
AWS Backint Agent for SAP HANA を使い、HANA バックアップを S3 に効率的に保存。
従来のバックアップ方法との比較:
テープ:
- 物理メディア管理・保管コスト
- リストア遅延・サイズ制限
- 災害時の復旧困難
NFS:
- ネットワーク帯域がボトルネック
- ストレージ管理・冗長性構築が複雑
AWS Backint Agent(推奨):
- S3 への直接ストリーミングアップロード
- 無制限容量・並行アップロード
- Lifecycle で自動アーカイブ
- 異なるリージョンへの自動レプリケーション
- きわめて低いリストア遅延(数分)
Backint Agent セットアップ:
# 1. HANA ホストに Agent をインストール
sudo wget https://d1uj6peq63e8mj.cloudfront.net/backint-agent-1.2.1.tar.gz
sudo tar -xzf backint-agent-*.tar.gz
sudo ./install.sh
# 2. IAM ロール作成(HANA EC2 に attached)
aws iam attach-role-policy \
--role-name hana-instance-role \
--policy-arn arn:aws:iam::aws:policy/AmazonS3FullAccess
# 3. HANA バックアップ設定
# HANA Studio / DBA Cockpit で Backint Agent を Catalog に登録
# 4. 自動バックアップスケジュール設定
# HANA Lifecycle Manager または Systems Manager で
aws ssm send-command \
--document-name "AWSSAP-SAPHANABackup" \
--targets '[{"Key": "tag:SAPSystem", "Values": ["HDB"]}]' \
--parameters '{
"BackupPrefix": ["COMPLETE"],
"BackupType": ["FULL"]
}'
S3 Lifecycle ポリシー:
{
"Rules": [
{
"Id": "HanaBackupLifecycle",
"Prefix": "hana-backup/",
"Status": "Enabled",
"Transitions": [
{
"Days": 30,
"StorageClass": "STANDARD_IA"
},
{
"Days": 90,
"StorageClass": "GLACIER"
}
],
"NoncurrentVersionTransitions": [
{
"NoncurrentDays": 90,
"StorageClass": "GLACIER"
}
],
"Expiration": {
"Days": 2555 // 7年保持
}
}
]
}
3. SAP パッチ管理(Patch Manager)
Systems Manager Patch Manager が SAP HANA・NetWeaver・S/4HANA パッチを自動検出・適用。
パッチタイプ:
SAP HANA:
- Revision Patch(バグ修正)
- Support Package(新機能・問題修正)
- Kernel Patch(Oracle DB)
SAP NetWeaver / S/4HANA:
- Kernel Patch
- Abap/Java Stack Patch
- Solution Manager Patch
- SAP GUI Patch
Operating System:
- Linux Kernel Patch
- Security Updates
- Driver Updates
Patch Manager 実行例:
# 1. SAP Patch Baseline 作成
aws ssm create-patch-baseline \
--name SAP-HANA-Patch-Baseline \
--operating-system-family AMAZON_LINUX_2 \
--approval-rules 'ComplianceLevel=HIGH,ApproveAfterDays=14' \
--patch-groups "sap-prod"
# 2. Patch Compliance スキャン実行
aws ssm send-command \
--document-name "AWS-RunPatchBaseline" \
--parameters "Operation=Scan" \
--targets '[{"Key": "tag:SAPSystem", "Values": ["HDB"]}]'
# 3. パッチコンプライアンス確認
aws ssm describe-instance-patch-states \
--instance-id i-1234567890abcdef0
# 4. Patch をメンテナンスウィンドウで自動適用
aws ssm create-maintenance-window \
--name SAP-Patch-Window \
--schedule "cron(0 2 ? * SUN)" \
--duration 4 \
--cutoff 1 \
--allow-unassociated-targets
Automation Runbook(パッチ適用の自動化):
{
"schemaVersion": "0.3",
"description": "SAP HANA Patch Application Runbook",
"parameters": {
"InstanceId": {
"type": "String",
"description": "SAP HANA EC2 Instance ID"
}
},
"mainSteps": [
{
"name": "StopHANA",
"action": "aws:executeScript",
"inputs": {
"Runtime": "python3.8",
"Handler": "stop_hana",
"Script": "def stop_hana(events, context):\n # HANA停止(backup mode含む)\n # hdbsql -u SYSTEM -p {password} 'BACKUP DATA CLOSE'\n # hdbnameserver --stop\n return {'status': 'stopped'}"
}
},
{
"name": "ApplyPatches",
"action": "aws:executeAwsApi",
"inputs": {
"Service": "ssm",
"Api": "SendCommand",
"DocumentName": "AWS-RunPatchBaseline",
"InstanceIds": ["{{ InstanceId }}"],
"Parameters": {
"Operation": ["Install"]
}
}
},
{
"name": "RestartHANA",
"action": "aws:executeScript",
"inputs": {
"Runtime": "python3.8",
"Handler": "start_hana",
"Script": "def start_hana(events, context):\n # HANA起動(HDB Start)\n # hdbnameserver --start\n # hdbsql 接続確認\n return {'status': 'started'}"
}
},
{
"name": "ValidationCheck",
"action": "aws:executeScript",
"inputs": {
"Runtime": "python3.8",
"Handler": "validate_health",
"Script": "def validate_health(events, context):\n # HANA が正常に起動したことを確認\n # M_SYSTEM_OVERVIEW.ACTIVE_STATUS == 'YES'\n return {'validation': 'passed'}"
}
}
]
}
4. SAP Inventory(在庫管理)
SAP システムの詳細な構成情報を自動収集・記録。
収集情報:
Database Information:
- HANA Version
- Database Size
- Tablespacce Usage
- Backup Status
- Replication Status
- Database Parameter
Application Server:
- Instance Name / Number
- Kernel Version
- Patch Level
- Dialog Process Count
- Work Process Status
Network & Storage:
- IP Address
- Hostname
- Mounted Filesystems
- NIC Configuration
- S3 Bucket Configuration(Backint)
Compliance & Security:
- HANA Security Rules
- User Privileges
- Encryption Status
- Certificate Information
5. Operations Insight(運用インサイト)
SAP パフォーマンス・ヘルス情報をダッシュボードに統合表示。
監視メトリクス:
Database Performance:
- Data Volume Memory Usage
- Memory Pressure Index
- SQL Execution Time
- Lock Time
- Backup Completion Time
Application Server:
- Dialog Response Time
- Update Task Time
- RFC Processing Time
- Batch Job Duration
System Health:
- Instance Availability
- Replication Lag(DR 構成)
- Disk Space
- Network Latency
主要ユースケース
1. オンプレミス SAP HANA の AWS への段階的移行
Step 1: パラレル運用
├─ オンプレ SAP HANA(既存)
└─ AWS SAP HANA(新規)
↓(Systems Manager for SAP で統一管理)
両システムの Performance・Availability を監視
Step 2: フェーズドカットオーバー
├─ オンプレ:Read-Only に変更
├─ AWS HANA:System Replication からフェーズアウト
└─ アプリケーション接続を AWS に切り替え
Step 3: オンプレ廃止
└─ Systems Manager で AWS SAP のみ運用
2. マルチ SAP System の統一パッチ管理
3 ヶ月ごとのパッチ適用サイクル:
前提:
- SAP HANA(ERP・BW・CRM:合計 5 システム)
- SAP NetWeaver(異なるリージョン)
- OS Kernel(Amazon Linux 2)
従来:各システムを手動確認・パッチ適用・テスト
Systems Manager for SAP:
→ Patch Policy で全 5 システムに自動適用ポリシー設定
→ Automation で停止→パッチ→起動を自動化
→ CloudWatch で全システムのコンプライアンス状態を一元監視
→ 報告書を自動生成(監査対応)
3. SAP HANA Disaster Recovery(DR)自動化
Primary Site(ap-northeast-1):
├─ SAP HANA Primary
├─ S/4HANA Application Server
└─ Backint Agent → S3 Backup
DR Site(us-east-1):
├─ SAP HANA Secondary(Replication mode)
└─ Application Server(Standby)
Failover Automation(Systems Manager):
1. 定期的な DR テスト(Systems Manager Automation)
2. Primary 障害検知(CloudWatch Alarms)
3. 自動フェーバー(Replication → Promote to Primary)
4. アプリケーション接続切り替え(Route 53 weighted routing 更新)
5. 通知(SNS → Email・Slack)
4. SAP Solutions Manager との統合
SAP Solutions Manager(オンプレ・クラウド):
├─ SAP Technical Monitoring Cockpit
├─ Solution Manager Diagnostics Agent
└─ Early Watch Alert
↓ Systems Manager for SAP が統合連携
AWS Systems Manager:
├─ Inventory(SAP ランドスケープ)
├─ Patch Management
├─ Backup Management
├─ Health Monitoring
└─ Compliance & Audit Trail
メリット:
- Single Pane of Glass
- AWS ネイティブ・SAP ネイティブツールの重複排除
- Cost Optimization(AWS-native サービス活用)
設定・操作の具体例
CloudFormation:SAP Systems Manager セットアップ
AWSTemplateFormatVersion: '2010-09-09'
Description: AWS Systems Manager for SAP Setup
Resources:
# IAM ロール:Systems Manager Agent 実行用
SSMAgentRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Principal:
Service: ssm.amazonaws.com
Action: sts:AssumeRole
ManagedPolicyArns:
- arn:aws:iam::aws:policy/service-role/AmazonSSMPatchAssociation
- arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy
Policies:
- PolicyName: S3BackintAccess
PolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Action:
- s3:*
Resource:
- arn:aws:s3:::sap-backup-bucket
- arn:aws:s3:::sap-backup-bucket/*
# CloudWatch ロググループ
SAPLogsGroup:
Type: AWS::Logs::LogGroup
Properties:
LogGroupName: /aws/ssm-sap/hana
RetentionInDays: 90
# CloudWatch ダッシュボード
SAPDashboard:
Type: AWS::CloudWatch::Dashboard
Properties:
DashboardName: SAP-HANA-Health
DashboardBody: |
{
"widgets": [
{
"type": "metric",
"properties": {
"metrics": [
["AWS/SAP", "HANAMemoryUsage", {"stat": "Average"}],
["AWS/SAP", "HANABackupDuration", {"stat": "Maximum"}],
["AWS/SAP", "ReplicationLag", {"stat": "Maximum"}],
["AWS/SAP", "DiskUsage", {"stat": "Average"}]
],
"period": 300,
"stat": "Average",
"title": "SAP HANA Health Metrics"
}
}
]
}
# SNS トピック(アラート通知)
SAPAlertTopic:
Type: AWS::SNS::Topic
Properties:
TopicName: sap-alerts
DisplayName: SAP System Alerts
# CloudWatch Alarm(HANA メモリ使用率)
HANAMemoryAlarm:
Type: AWS::CloudWatch::Alarm
Properties:
AlarmName: HANA-HighMemoryUsage
MetricName: HANAMemoryUsage
Namespace: AWS/SAP
Statistic: Average
Period: 300
EvaluationPeriods: 2
Threshold: 85
ComparisonOperator: GreaterThanThreshold
AlarmActions:
- !Ref SAPAlertTopic
# Patch Baseline
SAPPatchBaseline:
Type: AWS::SSM::PatchBaseline
Properties:
Name: SAP-HANA-Patch-Baseline
OperatingSystemFamily: AMAZON_LINUX_2
ApprovalRules:
PatchRules:
- PatchFilterGroup:
PatchFilters:
- Key: CLASSIFICATION
Values:
- Security
- Bugfix
ApproveAfterDays: 14
DefaultBaseline: false
Outputs:
SSMAgentRoleArn:
Value: !GetAtt SSMAgentRole.Arn
DashboardURL:
Value: !Sub "https://console.aws.amazon.com/cloudwatch/home?region=${AWS::Region}#dashboards:name=SAP-HANA-Health"
Terraform:Infrastructure as Code
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
}
}
provider "aws" {
region = "ap-northeast-1"
}
# IAM ロール
resource "aws_iam_role" "ssm_sap_role" {
name = "ssm-sap-role"
assume_role_policy = jsonencode({
Version = "2012-10-17"
Statement = [
{
Action = "sts:AssumeRole"
Effect = "Allow"
Principal = {
Service = "ssm.amazonaws.com"
}
}
]
})
}
# S3 バケット(バックアップ用)
resource "aws_s3_bucket" "sap_backup" {
bucket = "sap-backup-bucket-${data.aws_caller_identity.current.account_id}"
}
resource "aws_s3_bucket_lifecycle_configuration" "backup_lifecycle" {
bucket = aws_s3_bucket.sap_backup.id
rule {
id = "hana-backup-lifecycle"
status = "Enabled"
transition {
days = 30
storage_class = "STANDARD_IA"
}
transition {
days = 90
storage_class = "GLACIER"
}
expiration {
days = 2555 # 7年保持
}
}
}
# CloudWatch ロググループ
resource "aws_cloudwatch_log_group" "sap_logs" {
name = "/aws/ssm-sap/hana"
retention_in_days = 90
}
# CloudWatch ダッシュボード
resource "aws_cloudwatch_dashboard" "sap_health" {
dashboard_name = "SAP-HANA-Health-Dashboard"
dashboard_body = jsonencode({
widgets = [
{
type = "metric"
properties = {
metrics = [
["AWS/SAP", "HANAMemoryUsage", { stat = "Average" }],
["AWS/SAP", "HANABackupDuration", { stat = "Maximum" }],
["AWS/SAP", "ReplicationLag", { stat = "Maximum" }],
["AWS/SAP", "DiskUsage", { stat = "Average" }]
]
period = 300
stat = "Average"
title = "SAP HANA Health Metrics"
}
}
]
})
}
# Patch Baseline
resource "aws_ssm_patch_baseline" "sap_patch_baseline" {
name = "SAP-HANA-Patch-Baseline"
operating_system = "AMAZON_LINUX_2"
approval_rule {
patch_filter {
key = "CLASSIFICATION"
values = ["Security", "Bugfix"]
}
approve_after_days = 14
}
}
data "aws_caller_identity" "current" {}
output "backup_bucket" {
value = aws_s3_bucket.sap_backup.bucket
}
output "logs_group" {
value = aws_cloudwatch_log_group.sap_logs.name
}
CloudWatch 統合・監視
import boto3
import json
from datetime import datetime, timedelta
cloudwatch = boto3.client('cloudwatch')
ssm_sap = boto3.client('ssm-sap')
logs = boto3.client('logs')
def publish_sap_metrics():
"""SAP システムのメトリクスを CloudWatch に送信"""
# SAP HANA メトリクス取得(hdbsql または SAP SDK経由)
hana_metrics = {
'MemoryUsagePercent': 78.5,
'DiskUsagePercent': 45.2,
'CPU': 62.0,
'BackupLastCompletionTime': 120, # 分
'ReplicationLagTime': 5 # 秒
}
# CloudWatch に送信
cloudwatch.put_metric_data(
Namespace='AWS/SAP',
MetricData=[
{
'MetricName': 'HANAMemoryUsage',
'Value': hana_metrics['MemoryUsagePercent'],
'Unit': 'Percent',
'Timestamp': datetime.utcnow(),
'Dimensions': [
{'Name': 'SystemID', 'Value': 'PRD'},
{'Name': 'InstanceNumber', 'Value': '00'}
]
},
{
'MetricName': 'HANADiskUsage',
'Value': hana_metrics['DiskUsagePercent'],
'Unit': 'Percent',
'Timestamp': datetime.utcnow(),
'Dimensions': [
{'Name': 'SystemID', 'Value': 'PRD'}
]
},
{
'MetricName': 'ReplicationLag',
'Value': hana_metrics['ReplicationLagTime'],
'Unit': 'Seconds',
'Timestamp': datetime.utcnow(),
'Dimensions': [
{'Name': 'SystemID', 'Value': 'PRD'}
]
}
]
)
def analyze_sap_logs():
"""CloudWatch Logs Insights で SAP ログを分析"""
query = """
fields @timestamp, @message, @log
| filter @message like /ERROR|WARNING/
| stats count() as ErrorCount by @log
"""
# CloudWatch Logs Insights クエリ実行
response = logs.start_query(
logGroupName='/aws/ssm-sap/hana',
startTime=int((datetime.utcnow() - timedelta(hours=1)).timestamp()),
endTime=int(datetime.utcnow().timestamp()),
queryString=query
)
return response['queryId']
def create_sap_alarms():
"""SAP システム用の CloudWatch アラーム作成"""
alarms = [
{
'AlarmName': 'HANA-HighMemoryUsage',
'MetricName': 'HANAMemoryUsage',
'Threshold': 85,
'ComparisonOperator': 'GreaterThanThreshold'
},
{
'AlarmName': 'HANA-HighDiskUsage',
'MetricName': 'HANADiskUsage',
'Threshold': 80,
'ComparisonOperator': 'GreaterThanThreshold'
},
{
'AlarmName': 'HANA-ReplicationLagTooHigh',
'MetricName': 'ReplicationLag',
'Threshold': 30, # 30秒以上
'ComparisonOperator': 'GreaterThanThreshold'
}
]
for alarm in alarms:
cloudwatch.put_metric_alarm(
AlarmName=alarm['AlarmName'],
MetricName=alarm['MetricName'],
Namespace='AWS/SAP',
Statistic='Average',
Period=300,
EvaluationPeriods=2,
Threshold=alarm['Threshold'],
ComparisonOperator=alarm['ComparisonOperator'],
AlarmActions=['arn:aws:sns:ap-northeast-1:123456789012:sap-alerts']
)
類似サービス比較表
| 特徴 | AWS Systems Manager for SAP | SAP Solutions Manager | SAP Cloud ALM | Azure Center for SAP | GCP SAP 対応 |
|---|---|---|---|---|---|
| SAP 自動検出 | ✅ フル自動 | △ 手動設定 | △ | ~ | ~ |
| HANA バックアップ自動化 | ✅ Backint + S3 | △ Network Backup | ~ | ~ | △ |
| パッチ自動適用 | ✅ Automation | △ Solution Manager Patch | ~ | ~ | △ |
| クラウド統合度 | ✅ AWS ネイティブ | ~ | ✅ SAP Cloud | ✅ Azure 統合 | △ |
| 複数 SAP System 一元管理 | ✅ Organizations 対応 | ✅ | ✅ | ~ | △ |
| CloudWatch/Monitoring | ✅ 深い統合 | △ | ✅ SAP Fiori ダッシュボード | ✅ Azure Monitor | △ |
| コスト | AWS 従量課金 | SAP Enterprise | SAP Cloud | Azure 従量課金 | GCP 従量課金 |
| マルチクラウド対応 | △(AWS中心) | ✅ | ✅ | ✗ | ✗ |
ベストプラクティス
✅ 推奨
-
Backint Agent で S3 バックアップを一元化
- テープ・NFS 廃止
- S3 Lifecycle で自動アーカイブ
- 異なるリージョンへの複製設定
-
Automation で運用タスクを完全自動化
- 停止→パッチ→起動の一連を Runbook 化
- スケジュール実行・エラー時の自動リトライ
- ロールバック機能で安全性確保
-
Systems Manager Inventory で SAP 構成を最新に保つ
- 自動検出で SID・バージョン・コンポーネント把握
- タグで環境・オーナーを分類
- Compliance 監査に活用
-
CloudWatch ダッシュボード・アラームで統合監視
- HANA メモリ・CPU・ディスク使用率
- Replication Lag(DR 構成)
- バックアップ完了時間
- エラーログ解析(CloudWatch Logs Insights)
-
Organizations + Service Control Policy で統一ポリシー適用
- 複数 Account の SAP System へ Patch Policy 一括適用
- Backup Retention Policy を一元化
- コンプライアンス要件の標準化
❌ アンチパターン
-
テープ・NFS バックアップの継続
- 管理コスト増加
- リストア遅延
- クラウドメリット不活用
-
パッチ適用を手動実施
- 対象漏れ・ダウンタイム増大
- Automation で自動化すべき
-
Inventory なしで SAP System を管理
- SID・バージョン・配置が不明確
- Patch Manager の適用対象を正確に把握できない
-
CloudWatch 監視なし
- リアルタイムのヘルス状態が見えない
- 問題検知が遅延
-
SAP Solutions Manager と Systems Manager の重複
- ツール管理の複雑化
- 統合して Single Pane of Glass へ
2025-2026 最新動向
2025年
- AI-driven Health Prediction: SAP メトリクスを機械学習で分析・異常検知・故障予測
- Enhanced HANA Replication Monitoring: System Replication の詳細監視・自動フェイルオーバー
- S/4HANA 2025 対応: 新バージョンへの準備支援・アップグレード自動化
- Cost Optimization: RI・Savings Plans との連携・コスト可視化強化
2026年
- Multi-Region・Multi-Cloud対応: AWS + Azure + GCP の SAP System を統一管理(検討中)
- Quantum-Ready Security: 量子耐性暗号への準備・移行支援
- Edge SAP: エッジロケーションの SAP System 対応(HANA Edge)
- Autonomous Operations: AI による完全自動運用(アラート対応・リソース自動スケーリング等)
学習リソース
AWS 公式
SAP 公式
実装チェックリスト
- [ ] SAP Systems Manager for SAP エージェント導入・有効化
- [ ] S3 バックアップバケット作成・Lifecycle Policy 設定
- [ ] Backint Agent for SAP HANA インストール・設定
- [ ] SAP Inventory で自動検出確認
- [ ] Patch Baseline 作成・Patch Compliance スキャン実行
- [ ] Automation Runbook(停止→パッチ→起動)作成
- [ ] CloudWatch ダッシュボード・アラーム構築
- [ ] CloudWatch Logs Insights クエリ定義
- [ ] AWS Backup・リストア テスト実施
- [ ] Organizations + Service Control Policy で統一ポリシー適用
まとめ
AWS Systems Manager for SAP は、AWS 上の SAP HANA・S/4HANA の運用管理を一元化・自動化するサービス です。
SAP ランドスケープの自動検出・バックアップ・パッチ・ヘルス監視・パフォーマンス分析をシームレスに実行し、複雑な SAP 運用の手作業を大幅削減します。
Backint Agent で S3 への効率的なバックアップ、Automation で停止→パッチ→起動の自動化、CloudWatch との統合で統合監視を実現。
AWS + SAP の統合を最大化し、エンタープライズ SAP ワークロードの可用性・セキュリティ・効率性を飛躍的に向上させる戦略的サービスです。
最終更新:2026-04-27
バージョン:v2.0