このデプロイガイドでは、Linux オペレーティング システムに SAP MaxDB をインストールする準備ができている Compute Engine 仮想マシン(VM)をデプロイして接続する方法について説明します。
このガイドの手順では、Cloud Deployment Manager を使用して、VM、Linux オペレーティングシステム、SAP MaxDB に必要なディスク ボリュームをデプロイおよび構成します。
デプロイの計画について詳しくは、SAP MaxDB 計画ガイドをご覧ください。
前提条件
データ所在地、アクセス制御、サポート担当者、規制要件に準拠しながら SAP ワークロードを実行する必要がある場合は、必要な Assured Workloads フォルダを作成する必要があります。詳細については、Google Cloud 上の SAP のコンプライアンスと主権管理をご覧ください。
課金が有効になっている Google Cloud プロジェクトがまだない場合は、SAP MaxDB インストール用に VM をデプロイする前に、プロジェクトを作成する必要があります。
プロジェクトを作成するには:
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
gcloud
コマンド環境の構成
この手順では、Google Cloud リソースをデプロイまたは構成するための gcloud
コマンドを、Cloud Shell を使用して入力します。Cloud Shell には、ブラウザの Google Cloud コンソールからアクセスします。
Cloud Shell は、Cloud Shell を起動するたびに Google Cloud がプロビジョニングする VM 上で動作します。初めて Cloud Shell を使用するときには、Google Cloud は永続的な $HOME
ディレクトリも作成します。このディレクトリは、Cloud Shell を開くたびに復元されます。
プロビジョニングされた VM には、最新の Google Cloud CLI が含まれています。したがって、Cloud Shell で使用する gcloud
コマンドは、gcloud CLI のローカルにインストールされたインスタンスで使用するコマンドと同じです。
gcloud CLI がインストールされている場合は、以下の手順の中で使用されている gcloud
コマンドをローカルマシンから発行できます。ただし、ローカルにインストールされた gcloud CLI を使用する場合は、常に最新バージョンの gcloud CLI を使用していることを確認する必要があります。
Cloud Shell または gcloud CLI のいずれを使用する場合でも、gcloud
コマンド環境のプロパティを設定または変更して、それらのプロパティを 1 つの構成として保存できます。構成は、gcloud
コマンドの動作に影響を与える Key-Value ペアのコレクションです。
Cloud Shell の構成で実行できる基本的な操作は次のとおりです。
構成を初期化する。
gcloud init
現在の gcloud 構成の設定を確認する。
gcloud config list
必要な Google Cloud プロジェクトに切り替える。
PROJECT_ID
は、実際の Google Cloud プロジェクト ID に置き換えます。gcloud config set project PROJECT_ID
デフォルト リージョンを設定する。
REGION
は、Google Cloud リージョンに置き換えます。gcloud config set compute/region REGION
デフォルト ゾーンを設定する。
ZONE
は、Google Cloud ゾーンに置き換えます。gcloud config set compute/zone ZONE
新しい構成を作成する。
NAME
は、構成の名前に置き換えます。gcloud config configurations create NAME
構成に対する操作について詳しくは、gcloud CLI 構成の管理をご覧ください。
ネットワークの作成
セキュリティ上の理由から、新しいネットワークを作成します。アクセスできるユーザーを制御するには、ファイアウォール ルールを追加するか、別のアクセス制御方法を使用します。
プロジェクトにデフォルトの VPC ネットワークがある場合、デフォルトは使用せず、明示的に作成したファイアウォール ルールが唯一の有効なルールとなるように、独自の VPC ネットワークを作成してください。
デプロイ中、VM インスタンスは通常、Google Cloud の SAP 用エージェントをダウンロードするためにインターネットにアクセスする必要があります。Google Cloud から入手できる SAP 認定の Linux イメージのいずれかを使用している場合も、ライセンスを登録して OS ベンダーのリポジトリにアクセスするために、VM インスタンスからインターネットにアクセスする必要があります。このアクセスをサポートするために、NAT ゲートウェイを配置し、VM ネットワーク タグを使用して構成します。ターゲット VM に外部 IP がない場合でもこの構成が可能です。
ネットワークを設定するには:
コンソール
- Google Cloud コンソールで、[VPC ネットワーク] ページに移動します。
- [VPC ネットワークを作成] をクリックします。
- ネットワークの名前を入力します。
命名規則に従って名前を付けてください。VPC ネットワークは、Compute Engine の命名規則を使用します。
- [サブネット作成モード] で [カスタム] をクリックします。
- [新しいサブネット] セクションで、サブネットに次の構成パラメータを指定します。
- サブネットの名前を入力します。
- [リージョン] で、サブネットを作成する Compute Engine のリージョンを選択します。
- [IP スタックタイプ] で [IPv4(シングルスタック)] を選択し、CIDR 形式で IP アドレス範囲を入力します。(
10.1.0.0/24
など)これはサブネットのプライマリ IPv4 範囲です。複数のサブネットワークを追加する場合は、ネットワーク内の各サブネットワークに重複しない CIDR IP 範囲を割り当ててください。各サブネットワークとその内部 IP 範囲は、単一のリージョンにマッピングされることに注意してください。
- [完了] をクリックします。
- さらにサブネットを追加するには、[サブネットを追加] をクリックして前の手順を繰り返します。ネットワークを作成した後で、ネットワークにさらにサブネットを追加できます。
- [作成] をクリックします。
gcloud
- Cloud Shell に移動します。
- カスタム サブネットワーク モードで新しいネットワークを作成するには、次のコマンドを実行します。
gcloud compute networks create NETWORK_NAME --subnet-mode custom
NETWORK_NAME
は、新しいネットワークの名前に置き換えます。命名規則に従って名前を付けてください。VPC ネットワークは、Compute Engine の命名規則を使用します。デフォルトの自動モードでは、各 Compute Engine リージョンにサブネットが自動的に作成されます。この自動モードを使用しないようにするには、
--subnet-mode custom
を指定します。詳しくは、サブネット作成モードをご覧ください。 - サブネットワークを作成し、リージョンと IP 範囲を指定します。
gcloud compute networks subnets create SUBNETWORK_NAME \ --network NETWORK_NAME --region REGION --range RANGE
次のように置き換えます。
SUBNETWORK_NAME
: 新しいサブネットワークの名前NETWORK_NAME
: 前の手順で作成したサービスの名前REGION
: サブネットワークを配置するリージョンRANGE
: CIDR 形式で指定された IP アドレス範囲(例:10.1.0.0/24
)。複数のサブネットワークを追加する場合は、ネットワーク内の各サブネットワークに重複しない CIDR IP 範囲を割り当ててください。各サブネットワークとその内部 IP 範囲は、単一のリージョンにマッピングされることに注意してください。
- 必要に応じて前の手順を繰り返し、サブネットワークを追加します。
NAT ゲートウェイの設定
パブリック IP アドレスなしで 1 台以上の VM を作成する必要がある場合は、ネットワーク アドレス変換(NAT)を使用して、VM がインターネットにアクセスできるようにする必要があります。Cloud NAT は Google Cloud の分散ソフトウェア定義マネージド サービスであり、VM からインターネットへのパケットの送信と、それに対応するパケットの受信を可能にします。また、別個の VM を NAT ゲートウェイとして設定することもできます。
プロジェクトに Cloud NAT インスタンスを作成する方法については、Cloud NAT の使用をご覧ください。
プロジェクトに Cloud NAT を構成すると、VM インスタンスはパブリック IP アドレスなしでインターネットに安全にアクセスできるようになります。
Deployment Manager を使用した SAP MaxDB 用 Linux VM のデプロイ
以下の手順では、Deployment Manager を使用して、Linux および、SAP MaxDB に必要なすべての永続ディスクを含む VM インスタンスをデプロイします。
Deployment Manager について
この手順では、Deployment Manager 構成ファイル テンプレートでインストール環境のリソース オプションを定義します。
Deployment Manager では、SAP システム用に作成されたすべてのリソースを「デプロイメント」という単一のエンティティとして扱います。Google Cloud コンソールの [デプロイ] ページで、プロジェクトのすべてのデプロイメントを表示して作業できます。
Deployment Manager を使用するときは、以下の動作に注意してください。
- デプロイメントを削除すると、そのデプロイメントに関連付けられているすべてのリソース(VM、永続ディスク、VM にインストールされている SAP システムなど)が削除されます。
デフォルトでは、Deployment Manager は
ACQUIRE
リソース作成ポリシーを使用します。プロジェクト内の別の VM ですでに使用されている VM 名を指定した場合、新しい VM は作成されず、既存の VM が新しいデプロイメントに追加されます。元の VM が前回の Deployment Manager の実行で作成されたものである場合、VM は 2 つのデプロイメントに関連付けられます。その後、新しいデプロイメントを削除すると、取得した VM は最初に作成したデプロイメントから削除されます。このような事態を避けるには、Deployment Manager リソース ポリシーを
CREATE
に設定するか、新しいデプロイメントで一意のリソース名を使用してください。Deployment Manager でリソースを作成する際に使用できるポリシーとその指定方法については、Deployment Manager のドキュメントをご覧ください。
デプロイの手順
Cloud Shell を開きます。
Cloud Shell で次のコマンドを入力して、template.yaml 構成ファイルのテンプレートを作業ディレクトリにダウンロードします。
wget https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_maxdb/template.yaml
必要に応じて template.yaml のファイル名を変更し、このファイルで定義する構成がわかるようにします。
Cloud Shell コードエディタで template.yaml ファイルを開きます。
Cloud Shell コードエディタを開くには、Cloud Shell ターミナル ウィンドウの右上にある鉛筆アイコンをクリックします。
template.yaml ファイルで、以下のプロパティ値の括弧とその内容をご使用のインストール環境の値に置き換えて更新します。
プロパティ データ型 説明 type 文字列 デプロイ中に使用する Deployment Manager テンプレートの場所、タイプ、バージョンを指定します。
YAML ファイルには 2 つの
type
仕様が含まれており、そのうちの 1 つがコメントアウトされています。デフォルトで有効なtype
仕様では、テンプレート バージョンをlatest
として指定します。コメントアウトされているtype
仕様では、タイムスタンプを使用して特定のテンプレート バージョンを指定します。すべてのデプロイで同じテンプレート バージョンを使用する必要がある場合は、タイムスタンプを含む
type
仕様を使用します。instanceName 文字列 SAP MaxDB がインストールされる VM インスタンスの名前。名前は 13 文字以下で、小文字、数字、またはハイフンで指定する必要があります。 instanceType 文字列 SAP MaxDB がインストールされる Compute Engine 仮想マシンのタイプ。複数の vCPU を持つマシンタイプを指定します。たとえば、「n1-standard-4」です。同じ VM で SAP MaxDB を SAP NetWeaver とともに実行する場合は、両方のシステムをサポートするのに十分な CPU とメモリが割り当てられたマシンタイプを選択します。SAP NetWeaver プランニング ガイドをご覧ください。 zone 文字列 SAP MaxDB をデプロイしているゾーン。サブネットワーク用に選択したのと同じリージョンにある必要があります。 subnetwork 文字列 前のステップで作成したサブネットワークの名前。共有 VPC にデプロイする場合は、この値を [SHAREDVPC_PROJECT]/[SUBNETWORK]
の形式で指定します。例:myproject/network1
linuxImage 文字列 SAP MaxDB で使用している Linux オペレーティング システム イメージまたはイメージ ファミリーの名前。イメージ ファミリーを指定するには、ファミリー名に接頭辞 family/
を追加しますたとえば、family/rhel-7
やfamily/sles-12-sp3-sap
です。特定のイメージを指定するには、イメージ名のみを指定します。利用可能なイメージ ファミリーの一覧については、Cloud コンソールの [イメージ] ページをご覧ください。linuxImageProject 文字列 使用するイメージを含む Google Cloud プロジェクト。このプロジェクトは独自のプロジェクトか、 rhel-sap-cloud
やsuse-sap-cloud
のような Google Cloud イメージ プロジェクトです。Google Cloud イメージ プロジェクトの一覧については、Compute Engine ドキュメントのイメージのページをご覧ください。maxdbSID 文字列 データベースのインスタンス ID。 maxdbRootSize 整数 データベース インスタンスのルート ディレクトリである /sapdb のサイズ(GB 単位)。maxdbRootSize の最小値とデフォルト値はどちらも 8 GB です。 maxdbDataSize 整数 データベースのデータファイルを格納する /sapdb/[DBSID]/sapdata のサイズ。maxdbDataSize の最小値とデフォルト値はどちらも 30 GB です。 maxdbLogSize 整数 データベース トランザクション ログが格納される /sapdb/[DBSID]saplog のサイズ。maxdbLogSize の最小値とデフォルト値はどちらも 8 GB です。 maxdbBackupSize 整数 /maxdbbackup ボリュームのサイズ。このプロパティは省略可能です。0 に設定するか省略した場合、ディスクは作成されません。 maxdbDataSSD ブール値 データドライブが SSD 永続ディスクを使用する(「Yes」)か、HDD 永続ディスクを使用する(「No」)かを指定します。デフォルトは「Yes」です。 maxdbLogSSD ブール値 ログドライブが SSD 永続ディスクを使用する(「Yes」)か、HDD 永続ディスクを使用する(「No」)かを指定します。デフォルトは「Yes」です。ログドライブには SSD をおすすめします。 usrsapSize 整数 SAP MaxDB をインストールして、同じ VM インスタンス上で SAP NetWeaver とともに実行させる場合にのみ必要です。 sapmntSize 整数 SAP MaxDB をインストールして、同じ VM インスタンス上で SAP NetWeaver とともに実行させる場合にのみ必要です。 swapSize 整数 SAP MaxDB をインストールして、同じ VM インスタンス上で SAP NetWeaver とともに実行させる場合にのみ必要です。 次の構成ファイルは、SAP MaxDB データベース サーバーと SAP NetWeaver の両方を実行するように構成された VM を作成します。構成ファイルは、SLES 12 SP3 オペレーティング システムを実行している n1-standard-16 VM をデプロイするように Deployment Manager に指示します。VM には、NetWeaver とともに SAP MaxDB を実行するために必要なすべてのディレクトリが含まれています。
resources: - name: sap_maxdb type: https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_maxdb/sap_maxdb.py # # By default, this configuration file uses the latest release of the deployment # scripts for SAP on Google Cloud. To fix your deployments to a specific release # of the scripts, comment out the type property above and uncomment the type property below. # # type: https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/202103310846/dm-templates/sap_maxdb/sap_maxdb.py # properties: instanceName: xmp-maxdb-lin instanceType: n1-standard-16 zone: us-central1-f subnetwork: example-sub-network linuxImage: family/sles-12-sp3-sap linuxImageProject: suse-sap-cloud maxdbSID: MD1 maxdbRootSize: 10 maxdbDataSize: 50 maxdbLogSize: 30 maxdbBackupSize: 100 maxdbDataSSD: Yes maxdbLogSSD: Yes usrsapSize: 15 sapmntSize: 15 swapSize: 24
VM インスタンスを作成します。
gcloud deployment-manager deployments create [DEPLOYMENT-NAME] --config [TEMPLATE-NAME].yaml
上記のコマンドによって Deployment Manager が起動され、template.yaml ファイルの仕様に従って VM がデプロイされます。処理には数分かかる場合があります。デプロイの進行状況を確認するには、次のセクションの手順を実施してください。
デプロイの確認
デプロイを確認するには、Cloud Logging でデプロイログを確認し、VM の設定を確認します。
ログを調べる
Google Cloud コンソールで Cloud Logging を開き、インストールの進行状況をモニタリングして、エラーを確認します。
ログをフィルタします。
ログ エクスプローラ
[ログ エクスプローラ] ページで、[クエリ] ペインに移動します。
[リソース] プルダウン メニューから [グローバル] を選択し、[追加] をクリックします。
[グローバル] オプションが表示されない場合は、クエリエディタに次のクエリを入力します。
resource.type="global" "Deployment"
[クエリを実行] をクリックします。
以前のログビューア
- [以前のログビューア] ページの基本的なセレクタ メニューから、ロギング リソースとして [グローバル] を選択します。
フィルタされたログを分析します。
"--- Finished"
が表示されている場合、デプロイメントは完了しています。次の手順に進んでください。割り当てエラーが発生した場合:
[IAM と管理] の [割り当て] ページで、SAP MaxDB プランニング ガイドに記載されている SAP MaxDB の要件を満たしていない割り当てを増やします。
Deployment Manager の [デプロイ] ページでデプロイメントを削除し、失敗したインストールから VM と永続ディスクをクリーンアップします。
デプロイを再実行します。
VM の構成を確認する
SAP MaxDB システムがデプロイされたら、SSH を使用して VM に接続します。Compute Engine の [VM インスタンス] のページで、VM インスタンスの SSH ボタンをクリックするか、必要な SSH メソッドを使用します。
root ユーザーに変更します。
sudo su -
コマンド プロンプトで
df -h
を実行します。//sapdb/[DBSID]/sapdata
ディレクトリなど、次のような出力が表示されていることを確認します。SAP NetWeaver と同じ VM に SAP MaxDB をインストールする場合は、次のコマンドを入力してスワップ ディレクトリが作成されたことを確認します。
cat /proc/meminfo | grep Swap
次の例のような結果が表示されます。
確認ステップの途中でインストールに失敗したことが示された場合、次の手順を行います。
- エラーを修正します。
- [デプロイ] ページでデプロイメントを削除し、失敗したインストールから VM と永続ディスクをクリーンアップします。
- デプロイを再実行します。
データベースのインストール
オペレーティング システムが構成されたら、SAP MaxDB データベースをインストールできます。MaxDB は通常、統合されている SAP プロダクトとともにインストールされます。
VM に SAP MaxDB をインストールするには:
- Linux ベースの VM への SSH 接続を確立します。
- SAP インストール ガイドに従って、SAP Software Provisioning Manager(SWPM)、SAP プロダクト インストール メディア、MaxDB インストール メディアをダウンロードします。
- SAP プロダクトの SAP インストール ガイドに従って、SAP プロダクトと SAP MaxDB データベースをインストールします。追加のガイダンスについては、SAP MaxDB documentation をご覧ください。
追加のインストール情報については、SAP Note 1020175 - FAQ: SAP MaxDB installation, upgrade or applying a patch をご覧ください。
Google Cloud の SAP 用エージェントのインストールを検証する
VM をデプロイして SAP システムをインストールしたら、Google Cloud の SAP 用エージェントが正常に機能していることを確認します。
Google Cloud の SAP 用エージェントが実行されていることを確認する
エージェントの動作確認の手順は次のとおりです。
ホスト VM インスタンスと SSH 接続を確立します。
次のコマンドを実行します。
systemctl status google-cloud-sap-agent
エージェントが正常に機能している場合、出力には
active (running)
が含まれます。次に例を示します。google-cloud-sap-agent.service - Google Cloud Agent for SAP Loaded: loaded (/usr/lib/systemd/system/google-cloud-sap-agent.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2022-12-02 07:21:42 UTC; 4 days ago Main PID: 1337673 (google-cloud-sa) Tasks: 9 (limit: 100427) Memory: 22.4 M (max: 1.0G limit: 1.0G) CGroup: /system.slice/google-cloud-sap-agent.service └─1337673 /usr/bin/google-cloud-sap-agent
エージェントが実行されていない場合は、エージェントを再起動します。
SAP Host Agent が指標を受信していることを確認する
Google Cloud の SAP 用エージェントによってインフラストラクチャの指標が収集され、SAP Host Agent に正しく送信されていることを確認するには、次の操作を行います。
- SAP システムで、トランザクションとして「
ST06
」を入力します。 概要ウィンドウで可用性と以下のフィールドの内容を確認し、SAP と Google モニタリング インフラストラクチャのエンドツーエンドの設定が正しいか調べます。
- クラウド プロバイダ:
Google Cloud Platform
- Enhanced Monitoring Access:
TRUE
- Enhanced Monitoring Details:
ACTIVE
- クラウド プロバイダ:
デプロイ後のタスクの実行
SAP MaxDB インスタンスを使用する前に、次のデプロイ後の手順を実行することをおすすめします。
- 最新のパッチがある場合は、それを使用して SAP MaxDB ソフトウェアを更新します。
- 追加のコンポーネントをインストールします。
- 新しい SAP MaxDB データベースを構成してバックアップします。
詳細については、SAP MaxDB Database Administration をご覧ください。
トラブルシューティング
このセクションでは、一般的な問題を修正する方法について説明します。
VM への接続に関するトラブルシューティング
SSH 経由で VM に接続する際に問題がある場合は、使用中の Google Cloud ネットワーク上でポート 22 を開くためのファイアウォール ルールが作成されていることを確認してください。
その他の考えられる問題については、ブラウザから SSH 経由で接続する際の既知の問題をご覧ください。