Azure Database for PostgreSQL - フレキシブル サーバーで移行サービス用に Azure CLI を設定する方法
Azure CLI は、リソースを作成および管理するために Azure サービス全体で使用される一連のコマンドです。 Azure portal と同じ機能を備えていますが、コマンドライン環境での作業を好むユーザー向けに最適化されています。 Azure CLI を使用して移行を開始するには、ローカル コンピューターに Azure CLI をインストールする必要があります。
前提条件
- Azure CLI をインストールする: お使いのオペレーティング システムに応じて、Azure CLI をダウンロードしてインストールします。 これは Windows、macOS、Linux 向けに提供されています。
- Azure CLI インストール ガイド: Azure CLI のインストールに関する Azure の公式ドキュメント (「Azure CLI をインストールする方法」) に記載されている手順を実行してください。
- Azure CLI のバージョンを確認する: 移行サービスに必要であるため、Azure CLI バージョンが少なくとも 2.56.0 以降であることを確認します。 現在のバージョンを確認するには、コマンド
az --version
を使用します。 - Azure にサインインする: インストールしたら、
az login
を実行して認証します。 これにより、既定のブラウザーが開き、自分の Azure 資格情報を使用してサインイン プロセスが完了します。
これらの手順で、Azure CLI を使用して Azure Database for PostgreSQL の移行サービスを効果的に管理するための環境を準備します。 インストール プロセスの更新または変更については、常に最新の Azure ドキュメントを参照してください。
移行サービスの CLI コマンドを設定する
すべての CLI コマンドは、az postgres flexible-server migration
から始まります。 また、さまざまなオプションを理解し、CLI コマンドの正しい構文をフレーミングするのに役立つヘルプ ステートメントも用意されています。
CLI がインストールされたら、コマンド プロンプトを開き、以下のコマンドを使用して Azure アカウントにログインします。
az login
移行コマンド
移行サービスには、PostgreSQL インスタンスを Azure Database for PostgreSQL - フレキシブル サーバーに移行するのに役立つ次のコマンドが用意されています。
ヘルプ コマンド
Azure CLI の --help
コマンドは、操作に必要な動詞など、コマンドとそのサブコマンドに関する詳細なドキュメントを提供する役立つオプションです。 –-help
コマンドを実行すると、Azure Database for PostgreSQL の移行サービスに必要なコマンドとそれに関連付けられたアクションを表示できます。
az postgres flexible-server migration –-help
この出力では、Azure CLI を使用してデータベースの移行を効果的に管理するために必要な手順とパラメーターが案内されています。
Create コマンド
Azure CLI の az postgres flexible-server migration create
コマンドは、新しい移行ワークフローを開始するために使用されます。 これにより、ソース PostgreSQL インスタンスからターゲットの Azure Database for PostgreSQL - フレキシブル サーバー インスタンスへのデータベースの移行が容易になります。 このコマンドを実行すると、スムーズで効率的な移行プロセスを確保するために必要なパラメーターと構成を設定できます。
詳細については、「az postgres flexible-server migration create」を参照してください
一覧表示コマンド
az postgres flexible-server migration list
コマンドは、Azure Database for PostgreSQL ターゲットに対して行われたすべての移行試行を一覧表示するために使用されます。 このコマンドを使用すると、開始された移行の概要を把握し、各移行試行の状態と詳細を追跡できます。
詳細については、「az postgres flexible-server migration list」を参照してください
表示コマンド
az postgres flexible-server migration show
コマンドは、進行中の移行を監視するのに役立ち、移行の現在の状態とサブ状態を示します。 これらの詳細には、移行の現在の状態とサブ状態に関する情報が含まれます。
詳細については、「az postgres flexible-server migration show」を参照してください
移行の状態には、次のものがあります。
移行の状態
State | 説明 |
---|---|
InProgress | 移行インフラストラクチャのセットアップが進行中、または実際のデータ移行が進行中です。 |
取り消されました | 移行が取り消されたか削除されました。 |
Failed | 移行は失敗しました。 |
Validation Failed | 検証が失敗しました。 |
Succeeded | 移行が成功し、完了しました。 |
WaitingForUserAction | オンライン移行にのみ適用されます。 ユーザー アクションがカットオーバーを実行するのを待機しています。 |
移行サブ状態
下位状態 | 説明 |
---|---|
PerformingPreRequisiteSteps | データ移行のためのインフラストラクチャのセットアップが進行中です。 |
Validation in Progress | 検証を実行中です。 |
MigratingData | データ移行が進行中です。 |
CompletingMigration | 移行は完了の最終段階です。 |
完了 | 移行が完了しました。 |
Failed | 移行は失敗しました。 |
検証のサブ状態
下位状態 | 説明 |
---|---|
Failed | 検証が失敗しました。 |
Succeeded | 検証が成功しました。 |
警告 | 検証で警告が発生しています。 |
Update コマンド
az postgres flexible-server migration update
コマンドは、Azure Database for PostgreSQL フレキシブル サーバーへの移行プロセスを管理するために使用されます。 具体的には、次の用途に使用できます。
- 一括移行を実行する: これにより、データベース トラフィックがソース サーバーからターゲット フレキシブル サーバーに切り替わり、移行プロセスが完了します。
- 基本データの移行が完了すると、その移行タスクは
WaitingForCutoverTrigger
サブ状態に移動します。 この状態では、ユーザーは移行グリッドで移行名を選ぶか、CLI を使ってポータルから一括移行をトリガーできます。 - 一括移行を開始する前に、次のことを確認するのが重要です。
- ソースへの書き込みが停止されています
latency
値が 0 または 0 に近くに減少していますlatency
値は、ターゲットがソースと最後に同期した時期を示します。 この時点で、ソースへの書き込みを停止し、一括移行を開始することができます。 ソースに大量のトラフィックがある場合は、最初に書き込みを停止して、Latency
が 0 に近づいてから、一括移行を開始することをお勧めします。- 一括移行操作では、ソースからターゲットへの保留中のすべての変更が適用され、そして移行が完了します。
Latency
がゼロではなくても "一括移行" をトリガーした場合、レプリケーションはその時点までで停止します。 その場合、一括移行の時点までのソース上のすべてのデータが、ターゲットに適用されます。 たとえば、一括移行の時点で待ち時間が 15 分の場合、過去 15 分間のすべての変更データがターゲットに適用されます。
- 基本データの移行が完了すると、その移行タスクは
- 移行を取り消す: 必要に応じて、このオプションを使用して移行プロセスを停止できます。
- ソース側で論理レプリケーションをセットアップする: これは、フレキシブル サーバーへのデータ レプリケーションのためにサーバーを準備するので、ソース サーバーが Azure Database for PostgreSQL - 単一サーバーである場合に便利です。
詳細については、「az postgres flexible-server migration update」を参照してください
まとめ
次の表は、移行コマンドで使用されるパラメーターをまとめたものです。
パラメーター | 関連するコマンド | 説明 |
---|---|---|
subscription |
create、list、show、update | PostgreSQL フレキシブル サーバーのサブスクリプション ID |
resource-group |
create、list、show、update | PostgreSQL フレキシブル サーバーのリソース グループ |
name |
create、list、show | PostgreSQL フレキシブル サーバーの名前 |
migration-name |
create、show、update | フレキシブル サーバーに対して試行された移行に対する一意識別子。 このフィールドで使用できる文字は英数字のみで、ハイフン (-) 以外の特殊文字は使用できません。 名前の先頭に - を付けることはできません。また、1 つのフレキシブル サーバー ターゲットへの 2 つの移行に、同じ名前をつけることはできません。 |
filter |
list | 移行をフィルター処理するには、2 つの値 (Active と All) がサポートされています |
help |
create、list、show、update | 各コマンドに関する情報が表示されます。 |
migration-mode |
create | これは省略可能なパラメーターです。 使用できる値は offline、online です。 既定値: オフライン。 |
migration-option |
create | 移行をトリガーする前に検証を実行できます。 既定値は ValidateAndMigrate です。 使用できる値は、Migrate、Validate、ValidateAndMigrate です。 |
properties |
create | ソース、ターゲット サーバー、移行するデータベース、SSL モード、ソースの種類の定義に関する情報が含まれる JSON ファイルへの絶対パス |
JSON ファイルの詳細
az postgres flexible-server migration create
コマンドには、--properties
パラメーターの一部として JSON ファイルのパスが必要です。これには、ソース データベース サーバーのリソース ID、管理者の資格情報、移行するデータベース、その他の重要な設定など、移行の構成の詳細が含まれています。 さまざまなプロパティを次に示します。
プロパティ名 | 説明 |
---|---|
sourceDbServerResourceId |
オンプレミス、仮想マシン (VM)、クラウドベースの APostgreSQL サービスの形式のソース サーバーの詳細 - <<hostname or IP address>>:<<port>>@<<username>> 。 ソース サーバーが Azure Database for PostgreSQL - 単一サーバーの場合、リソース ID の形式は /subscriptions/<<Subscription ID>>/resourceGroups/<<Resource Group Name>>/providers/Microsoft.DBforPostgreSQL/servers/<<PostgreSQL Single Server name>> です |
adminCredentials |
このパラメーターは、ソース サーバーとターゲット PostgreSQL フレキシブル サーバーの両方の管理者ユーザーのパスワードを一覧表示します。 これらのパスワードは、ソース サーバーとターゲットの両方のサーバーに対する認証に役立ちます。 これには 2 つのサブプロパティ sourceServerPassword と targetServerPassword が含まれています |
targetServerUserName |
既定値は、PostgreSQL ターゲット フレキシブル サーバーの作成時に作成された管理者ユーザーであり、指定されたパスワードは、このユーザーに対する認証に使用されます。 |
dbsToMigrate |
フレキシブル サーバーに移行するデータベースのリストを指定します。 一度に含めることができるデータベース名は最大 8 個です。 DB の一覧を配列形式で指定します。 |
overwriteDBsInTarget |
true (既定値) に設定すると、移行しようとしているものと同じ名前の既存のデータベースがターゲット サーバーにある場合、移行サービスによってそのデータベースが自動的に上書きされます |
migrationRuntimeResourceId |
移行にランタイム サーバーを使用する必要がある場合は必要です。 形式は /subscriptions/<<Subscription ID>>/resourceGroups/<<Resource Group Name>>/providers/Microsoft.DBforPostgreSQL/flexibleServers/<<PostgreSQL Flexible Server name>> です。 |
sourceType |
必須の パラメーター。 値には、on-premises、AWS_RDS、AWS_AURORA、GCP_CloudSQL、AzureVM、PostgreSQLSingleServer を指定できます |
sslMode |
移行用の SSL モード。 PostgreSQLSingleServer の SSL モードは VerifyFull であり、他のソースの種類の場合は Prefer/Require です。 |
関連するコンテンツ
- Azure Database for PostgreSQL の移行サービス
- 単一サーバーからフレキシブル サーバーに移行する
- Amazon RDS for PostgreSQL からオフラインで移行する
- Amazon RDS for PostgreSQL からオンラインで移行する
- Amazon Aurora PostgreSQL からオフラインで移行する
- Amazon Aurora PostgreSQL からオンラインで移行する
- オンプレミスまたは Azure VM でホストされている PostgreSQL からオフラインで移行する
- オンプレミスまたは Azure VM でホストされている PostgreSQL からオンラインで移行する