Azure Linux 仮想マシンで Oracle ASM をセットアップする

適用対象: ✔️ Linux VM

Azure 仮想マシンは、完全に構成可能で柔軟なコンピューティング環境を提供します。 このチュートリアルでは、Azure 仮想マシンの基本的なデプロイと、Oracle Automatic Storage Management (ASM) のインストールと構成について説明します。 学習内容は次のとおりです。

  • Oracle データベース VM を作成し、それに接続する
  • Oracle Automatic Storage Management をインストールし、構成する
  • Oracle Grid Infrastructure をインストールし、構成する
  • Oracle ASM インストールを初期化する
  • ASM により管理される Oracle DB を作成する

ASM の価値提案の概要については、Oracle のドキュメントを参照してください。

CLI をローカルにインストールして使用する場合、このチュートリアルでは、Azure CLI バージョン 2.0.4 以降を実行していることが要件です。 バージョンを確認するには、az --version を実行します。 インストールまたはアップグレードする必要がある場合は、Azure CLI のインストールに関するページを参照してください。

環境の準備

このラボでは、Azure 上で 2 つの VM を使用します。asmXServer は、グリッド セットアップの実行に使用される X Windows サーバーを実行し、asmVM は、Oracle Database と ASM のインストールをホストします。 これらの仮想マシンの作成に使用される Marketplace イメージは、次のとおりです。

  • asmVM: Oracle:oracle-database-19-3:oracle-database-19-0904:19.3.1
  • asmXServer: MicrosoftWindowsDesktop:Windows-10:win10-22h2-pro-g2:19045.2604.230207

また、Unix vi エディター vi を使い慣れていて、X Server の基本を理解している必要があります。

Azure へのサインイン

  1. Windows、Linux、または Azure Shell で任意のシェルを開きます。

  2. az login コマンドを使用して、Azure サブスクリプションにサインインします。 その後、画面の指示に従います。

    $ az login
    
  3. サブスクリプション名または ID (あるいはその両方) を確認して、正しいサブスクリプションに接続していることを確認します。

    $ az account show
    
    {
      "environmentName": "XXXXX",
      "homeTenantId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
      "id": "<SUBSCRIPTION_ID>",
      "isDefault": true,
      "managedByTenants": [],
      "name": "<SUBSCRIPTION_NAME>",
      "state": "Enabled",
      "tenantId": XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX",
      "user": {
        "cloudShellID": true,
        "name": "aaaaa@bbbbb.com",
        "type": "user"
      }
    }
    

認証キーを生成する

Oracle Database VM に接続するには、ssh を使用してキーファイル ベースの認証を使用します。 シェルにプライベート (id_rsa という名前) とパブリック (id_rsa.pub という名前) のキー ファイルが作成されていることを確認します。

キー ファイルの場所は、ソース システムによって異なります。

Windows: %USERPROFILE%.ssh Linux: ~/.ssh

存在しない場合は、新しいキーファイル ペアを作成できます。

$ ssh-keygen -m PEM -t rsa -b 4096

.ssh ディレクトリとキー ファイルが作成されます。 詳細については、Azure の Linux VM に対する認証のための SSH キーの作成および管理に関する記事を参照してください

リソース グループを作成する

リソース グループを作成するには、az group create コマンドを使用します。 Azure リソース グループとは、Azure リソースのデプロイと管理に使用する論理コンテナーです。

$ az group create --name ASMOnAzureLab --location westus

ネットワークを作成して構成する

Create virtual network

次のコマンドを使用して、このラボで作成したリソースをホストする仮想ネットワークを作成します。

$ az network vnet create \
  --name asmVnet \
  --resource-group ASMOnAzureLab \
  --address-prefixes "10.0.0.0/16" \
  --subnet-name asmSubnet1 \
  --subnet-prefixes "10.0.0.0/24"

ネットワーク セキュリティ グループ (NSG) を作成する

  1. ネットワーク セキュリティ グループ (NSG) を作成して、仮想ネットワークをロックダウンします。

    $ az network nsg create \
      --resource-group ASMOnAzureLab \
      --name asmVnetNSG
    
  2. 仮想ネットワーク内の通信を許可する NSG ルールを作成します。

    $ az network nsg rule create  --resource-group ASMOnAzureLab --nsg-name asmVnetNSG \
        --name asmAllowVnet \
        --protocol '*' --direction inbound --priority 3400 \
        --source-address-prefix 'VirtualNetwork' --source-port-range '*' \
        --destination-address-prefix 'VirtualNetwork' --destination-port-range '*' --access allow
    
  3. すべての受信接続を拒否する NSG 規則を作成します

    $ az network nsg rule create \
      --resource-group ASMOnAzureLab \
      --nsg-name asmVnetNSG \
      --name asmDenyAllInBound \
      --protocol '*' --direction inbound --priority 3500 \
      --source-address-prefix '*' --source-port-range '*' \
      --destination-address-prefix '*' --destination-port-range '*' --access deny
    
  4. サーバーをホストするサブネットに NSG を割り当てます。

    $ az network vnet subnet update --resource-group ASMOnAzureLab --vnet-name asmVNet --name asmSubnet1 --network-security-group asmVnetNSG
    

Bastion ネットワークを作成する

  1. Bastion サブネットを作成します。 サブネットの名前は AzureBastionSubnet にする必要があります

    $ az network vnet subnet create  \
        --resource-group ASMOnAzureLab \
        --name AzureBastionSubnet \
        --vnet-name asmVnet \
        --address-prefixes 10.0.1.0/24
    
  2. Bastion のパブリック IP を作成します

    $ az network public-ip create \
        --resource-group ASMOnAzureLab \
        --name asmBastionIP \
        --sku Standard
    
  3. Azure Bastion リソースを作成します。 リソースのデプロイには約 10 分かかります。

    $ az network bastion create \
        --resource-group ASMOnAzureLab \
        --name asmBastion \
        --public-ip-address asmBastionIP \
        --vnet-name asmVnet \
        --sku Standard \
        --enable-tunneling \
        --enable-ip-connect true
    

X Server VM (asmXServer) を作成する

パスワードを置き換え、次のコマンドを実行して、X Server をデプロイする Windows ワークステーション VM を作成します。

$ az vm create \
    --resource-group ASMOnAzureLab \
    --name asmXServer \
    --image MicrosoftWindowsDesktop:Windows-10:win10-22h2-pro-g2:19045.2604.230207 \
    --size Standard_DS1_v2  \
    --vnet-name asmVnet \
    --subnet asmSubnet1 \
    --public-ip-sku Standard \
    --nsg "" \
    --data-disk-delete-option Delete \
    --os-disk-delete-option Delete \
    --nic-delete-option Delete \
    --admin-username azureuser \
    --admin-password <ENTER_YOUR_PASSWORD_HERE>

asmXServer に接続する

Bastion を使用して asmXServer に接続します。

  1. Azure portal から asmXServer に移動します。
  2. 左側のブレードで [概要] に移動します
  3. 上部のメニューで [接続]>[Bastion] を選択します
  4. [Bastion] タブを選択します
  5. [Bastion を使用する] をクリックします

X Server を実行するための asmXServer の準備

このラボの以降の手順では、X Server が必要です。 X Server をインストールして起動するには、次の手順を実行します。

  1. ggXServerXming X Server for Windows をダウンロードし、すべての既定のオプションをインストールします。

  2. インストールの最後に [Launch]\(起動) を選択していないことを確認します

  3. スタート メニューから "XLAUNCH" アプリケーションを起動します。

  4. [Multiple Windows](複数のウィンドウ) を選択します

    Screenshot of XLaunch wizard step 1.

  5. [Start no client](クライアントを開始しない) を選択します

    Screenshot of XLaunch wizard step 2.

  6. [No access control](アクセス制御なし) を選択します

    Screenshot of XLaunch wizard step 3.

  7. [Allow Access](アクセスの許可) を選択して Windows ファイアウォール経由で X Server を許可します

    Screenshot of XLaunch wizard step 4.

asmXServer VM を再起動する場合は、上記の手順 2 から 6 に従って X Server アプリケーションを再起動します。

Oracle Database VM を作成する

このラボでは、Oracle Database 19c イメージから仮想マシン asmVM を作成します。 以下を実行して、複数のデータ ディスクがアタッチされた asmVM を作成します。 これらがキーの既定の場所にまだ存在しない場合、このコマンドによって SSH キーも作成されます。 特定のキーのセットを使用するには、--ssh-key-value オプションを使用します。 [認証キーを生成する] セクションで SSH キー を既に作成している場合は、それらのキーが使用されます。

新しい仮想マシンのを作成する場合、size パラメーターは、作成される仮想マシンのサイズと種類を示します。 仮想マシンの作成のために選択した Azure リージョンと、サブスクリプション設定によっては、一部の仮想マシンのサイズと種類を使用できない場合があります。 次のコマンドでは、このラボで必要な最小サイズ Standard_D4_v5 が使用されます。 仮想マシンの仕様を変更する場合は、Azure VM サイズから使用可能なサイズのいずれかを選択します。 テスト目的では、General Purpose (D シリーズ) 仮想マシンの種類から選択できます。 運用またはパイロットのデプロイでは、メモリ最適化 (E シリーズおよび M シリーズ) の方が適しています。

az vm create --resource-group ASMOnAzureLab \
   --name asmVM \
   --image Oracle:oracle-database-19-3:oracle-database-19-0904:19.3.1 \
   --size Standard_D4_v5 \
   --generate-ssh-keys \
   --os-disk-size-gb 30 \
   --data-disk-sizes-gb 20 40 40 \
   --admin-username azureuser \
   --vnet-name asmVnet \
   --subnet asmSubnet1 \
   --public-ip-sku Basic \
   --nsg ""

asmVM に接続する

Bastion を使用して asmVM に接続します。

  1. Azure portal から asmVM に移動します。
  2. 左側のブレードで [概要] に移動します
  3. 上部のメニューで [接続]>[Bastion] を選択します
  4. [Bastion] タブを選択します
  5. [Bastion を使用する] をクリックします

スワップ ファイルを作成する

このラボでは、ラボ仮想マシン上のスワップ ファイルが必要です。 スワップ ファイルを作成するには、次の手順を実行します。

ディスクとマウント ポイントを準備する

  1. 前に仮想マシン (asmVM) を作成したときに、スワップ ファイルを配置する 20 GB のデータ ディスクを含めました。 次のコマンドを実行して、この 20 GB のディスクの名前を確認します。 ほとんどの場合 は /dev/sdb ですが、異なる場合は、20G のディスクの名前をメモし、次の手順でそれを使用してください。 同様に、40G のディスクの名前 (次の出力では /dev/sdc/dev/sdd という名前) を後で使用します。

    $ sudo su -
    $ lsblk
    
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sdd       8:48   0   40G  0 disk             ====> Data disk 2 (40GB)
    sdb       8:16   0   20G  0 disk             ====> Swap file disk (20GB)
    sr0      11:0    1  628K  0 rom
    fd0       2:0    1    4K  0 disk
    sdc       8:32   0   40G  0 disk             ====> Data disk 1 (40GB)
    sda       8:0    0   30G  0 disk
    ├─sda2    8:2    0   29G  0 part /
    ├─sda14   8:14   0    4M  0 part
    ├─sda15   8:15   0  495M  0 part /boot/efi
    └─sda1    8:1    0  500M  0 part /boot
    
  2. 次のコマンドを実行して、スワップ ファイルのディスクにパーティションを作成し、必要に応じてディスク名 (/dev/sdb) を変更します。

    $ parted /dev/sdb --script mklabel gpt mkpart xfspart xfs 0% 100%
    
  3. 作成されたパーティションの名前を確認します。 以下では、sdb1 として作成されています

    $ lsblk
    
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sdd       8:48   0   40G  0 disk
    sdb       8:16   0   20G  0 disk
    └─sdb1    8:17   0   20G  0 part             ====> Newly created partition
    sr0      11:0    1  628K  0 rom
    fd0       2:0    1    4K  0 disk
    sdc       8:32   0   40G  0 disk
    sda       8:0    0   30G  0 disk
    ├─sda2    8:2    0   29G  0 part /
    ├─sda14   8:14   0    4M  0 part
    ├─sda15   8:15   0  495M  0 part /boot/efi
    └─sda1    8:1    0  500M  0 part /boot
    
  4. 次のコマンドを実行して、ファイル システム (xfs) を初期化し、ドライブを /swap としてマウントします

    $ mkfs.xfs /dev/sdb1
    $ partprobe /dev/sdb1
    $ mkdir /swap
    $ mount /dev/sdb1 /swap
    
  5. 次のコマンドを実行します

    $ blkid
    

    出力には、スワップ ディスク パーティション /dev/sdb1 の行が表示されます。その UUID をメモします。

    /dev/sdb1: UUID="00000000-0000-0000-0000-000000000000" TYPE="xfs" PARTLABEL="xfspart" PARTUUID="...."
    
  6. 前の手順の UUID を次のコマンドに貼り付けて実行します。 このコマンドにより、システムが再起動するたびに、ドライブが適切にマウントされます。

    $ echo "UUID=00000000-0000-0000-0000-000000000000   /swap   xfs   defaults,nofail   1   2" >> /etc/fstab
    

スワップ ファイルを構成する

  1. スワップ ファイル (16 GB) を作成して割り当てます。 このコマンドの実行には数分かかります。

    $ dd if=/dev/zero of=/swap/swapfile bs=1M count=16384
    
  2. アクセス許可を変更してスワップ ファイルを割り当てます

    $ chmod 600 /swap/swapfile
    $ mkswap /swap/swapfile
    $ swapon /swap/swapfile
    
  3. スワップ ファイルが作成されていることを確認します

    $ cat /proc/swaps
    
    Filename        Type    Size        Used    Priority
    /swap/swapfile  file    16777212    0        -2
    
  4. スワップ ファイルの設定が再起動後も保持されていることを確認します

    $ echo "/swap/swapfile   none  swap  sw  0 0" >> /etc/fstab
    

Oracle ASM のインストール

Oracle ASM をインストールするには、次の手順を実行します。

Oracle ASM のインストールの詳細については、「Oracle ASMLib Downloads for Oracle Linux 7 (Oracle Linux 7 用の Oracle ASMLib のダウンロード)」を参照してください。

  1. ASM のインストールを続行するには、root としてログインする必要があります (まだそのようにしていない場合)

    $ sudo su -
    
  2. Oracle ASM コンポーネントをインストールするには、追加コマンドを実行します。

    $ yum list | grep oracleasm
    

    コマンドの出力は次のようになります

    kmod-oracleasm.x86_64                    2.0.8-28.0.1.el7            ol7_latest
    oracleasm-support.x86_64                 2.1.11-2.el7                ol7_latest
    

    次のコマンドを実行してインストールを続行します

    $ yum -y install kmod-oracleasm.x86_64
    $ yum -y install oracleasm-support.x86_64
    $ wget https://download.oracle.com/otn_software/asmlib/oracleasmlib-2.0.15-1.el7.x86_64.rpm
    $ yum -y install oracleasmlib-2.0.15-1.el7.x86_64.rpm
    $ rm -f oracleasmlib-2.0.15-1.el7.x86_64.rpm
    
  3. Oracle ASM がインストールされていることを確認します。

    $ rpm -qa |grep oracleasm
    

    このコマンドの出力には、次のコンポーネントが一覧表示されます。

    oracleasm-support-2.1.11-2.el7.x86_64
    oracleasmlib-2.0.15-1.el7.x86_64
    kmod-oracleasm-2.0.8-28.0.1.el7.x86_64
    
  4. ASM は正しく機能するために、特定のユーザーとロールを必要とします。 次のコマンドにより、前提条件のユーザー アカウントとグループが作成されます。

    $ groupadd -g 54345 asmadmin
    $ groupadd -g 54346 asmdba
    $ groupadd -g 54347 asmoper
    $ usermod -a -g oinstall -G oinstall,dba,asmdba,asmadmin,asmoper oracle
    
  5. ユーザーとグループが正しく作成されたことを確認します。

    $ grep oracle /etc/group
    

    このコマンドの出力には、次のユーザーとグループが一覧表示されます。

     oinstall:x:54321:oracle
     dba:x:54322:oracle
     oper:x:54323:oracle
     backupdba:x:54324:oracle
     dgdba:x:54325:oracle
     kmdba:x:54326:oracle
     racdba:x:54330:oracle
     asmadmin:x:54345:oracle
     asmdba:x:54346:oracle
     asmoper:x:54347:oracle
    
  6. アプリ フォルダーを作成して所有者を変更します。

    $ mkdir /u01/app/grid
    $ chown oracle:oinstall /u01/app/grid
    

Oracle ASM のセットアップ

このチュートリアルでは、既定のユーザーは oracle、既定のグループは asmadmin です。 oracle ユーザーが asmadmin グループに属していることを確認します。

$ groups oracle

コマンドの出力は次のようになります

oracle : oinstall dba oper backupdba dgdba kmdba racdba asmadmin asmdba asmoper

Oracle ASM を設定するには、次の手順を実行します。

  1. 次のコマンドを使用して Oracle ASM ライブラリ ドライバーを設定し、プロンプトに対して次の回答を提供します。

    $ /usr/sbin/oracleasm configure -i
    

    このコマンドの出力は次のようになります。回答するべきプロンプトで停止します。

    Configuring the Oracle ASM library driver.
    
    This will configure the on-boot properties of the Oracle ASM library
    driver. The following questions will determine whether the driver is
    loaded on boot and what permissions it will have. The current values
    will be shown in brackets ('[]'). Hitting <ENTER> without typing an
    answer will keep that current value. Ctrl-C will abort.
    
    Default user to own the driver interface []: oracle
    Default group to own the driver interface []: asmadmin
    Start Oracle ASM library driver on boot (y/n) [n]: y
    Scan for Oracle ASM disks on boot (y/n) [y]: y
    Writing Oracle ASM library driver configuration: done
    

    Note

    /usr/sbin/oracleasm configure -i コマンドは、既定で ASM ドライバー アクセス ポイントを所有するユーザーとグループを要求します。 データベースは、oracle ユーザーと asmadmin グループとして実行されます。 [Start Oracle ASM library driver on boot](ブート時に Oracle ASM ライブラリ ドライバーを起動) = 'y' を選択すると、システムはブート時に常にモジュールを読み込んで、ファイルシステムをマウントします。 [Scan for Oracle ASM disks on boot](ブート時に Oracle ASM ディスクをスキャン) = 'y' を選択すると、システムは起動時に常に Oracle ASM ディスクをスキャンします。 最後の 2 つの構成は非常に重要です。これを行わない場合、ディスクの再起動に関する問題が発生します。

  2. ディスク構成を表示します。

    $ cat /proc/partitions
    

    このコマンドの出力は、次のようなディスクの一覧になります。

     major minor  #blocks  name
        8       16   20971520 sdb
        8       17   20969472 sdb1
        8       32   41943040 sdc
        8       48   41943040 sdd
        8        0   31457280 sda
        8        1     512000 sda1
        8        2   30431232 sda2
        8       14       4096 sda14
        8       15     506880 sda15
       11        0        628 sr0
        2        0          4 fd0
    
  3. ディスク /dev/sdc をフォーマットします。次のコマンドを実行し、プロンプトに次のように回答します。

    1. 新しいパーティションには n
    2. プライマリ パーティションには p
    3. 最初のパーティションを選択するには 1
    4. 既定の最初のセクターには Enter キーを押します
    5. 既定の最後のセクターには Enter キーを押します
    6. 変更をパーティション テーブルに書き込むには w を押します
    $ fdisk /dev/sdc
    

    fdisk コマンドの出力は、次の出力のようになります。

     Welcome to fdisk (util-linux 2.23.2).
    
     Changes will remain in memory only, until you decide to write them.
     Be careful before using the write command.
    
     Device does not contain a recognized partition table
     Building a new DOS disklabel with disk identifier 0x947f0a91.
    
     The device presents a logical sector size that is smaller than
     the physical sector size. Aligning to a physical sector (or optimal
     I/O) size boundary is recommended, or performance may be impacted.
    
     Command (m for help): n
     Partition type:
        p   primary (0 primary, 0 extended, 4 free)
        e   extended
     Select (default p): p
     Partition number (1-4, default 1): 1
     First sector (2048-104857599, default 2048):
     Using default value 2048
     Last sector, +sectors or +size{K,M,G} (2048-104857599, default 104857599):
     Using default value 104857599
     Partition 1 of type Linux and of size 50 GiB is set
    
     Command (m for help): w
     The partition table has been altered!
    
     Calling ioctl() to re-read partition table.
     Syncing disks.
    
  4. 前述の fdisk コマンドを /dev/sdd に対して繰り返します。

    $ fdisk /dev/sdd
    
  5. ディスク構成を確認します。

    $ cat /proc/partitions
    

    コマンドの出力は、次の出力のようになります。

     major minor  #blocks  name
        8       16   20971520 sdb
        8       17   20969472 sdb1
        8       32   41943040 sdc
        8       33   41942016 sdc1
        8       48   41943040 sdd
        8       49   41942016 sdd1
        8        0   31457280 sda
        8        1     512000 sda1
        8        2   30431232 sda2
        8       14       4096 sda14
        8       15     506880 sda15
       11        0        628 sr0
        2        0          4 fd0
    

    Note

    次の構成では、このドキュメントに示しているとおりの正確なコマンドを使用してください。

  6. Oracle ASM サービスの状態を確認し、Oracle ASM サービスを開始します。

    $ oracleasm status
    
     Checking if ASM is loaded: no
     Checking if /dev/oracleasm is mounted: no
    
    $ oracleasm init
    
     Creating /dev/oracleasm mount point: /dev/oracleasm
     Loading module "oracleasm": oracleasm
     Configuring "oracleasm" to use device physical block size
     Mounting ASMlib driver filesystem: /dev/oracleasm
    
  7. Oracle ASM ディスクを作成します

    1. 最初のディスクを作成します

      $ oracleasm createdisk VOL1 /dev/sdc1
      
    2. コマンドの出力は次のようになります

       Writing disk header: done
       Instantiating disk: done
      
    3. 残りのディスクを作成します

      $ oracleasm createdisk VOL2  /dev/sdd1
      

    Note

    ディスクは、ASMLib のインストールに関するページで説明されているプロセスを使用することで ASMLib 用にマークされます。 ASMLib は、ディスク スキャンと呼ばれるプロセス中にどのディスクがマークされているかを学習します。 ASMLib は、起動するたびにこのスキャンを実行します。 システム管理者は、oracleasm scandisks コマンドを使用して強制的にスキャンすることもできます。 ASMLib は、システム内の各ディスクを検査します。 これにより、ディスクが ASMLib 用にマークされているか確認されます。 マークされているディスクは、ASMLib で使用できるようになります。 詳細については、ドキュメント「Oracle ASMLIB を使用したストレージ デバイス パスの永続化の構成」と「マルチパス ディスクでの Oracle ASMLib の構成」を参照してください。

  8. Oracle ASM ディスクを一覧表示します

    $ oracleasm scandisks
    $ oracleasm listdisks
    

    コマンドの出力には、次のような Oracle ASM ディスクが一覧表示されます。

     VOL1
     VOL2
    
  9. ルートおよび Oracle ユーザーのパスワードを変更します。 インストールの後の段階で使用するため、新しいパスワードをメモしておきます

    $ passwd oracle
    $ passwd root
    
  10. フォルダーのアクセス許可を変更します

    $ chmod -R 775 /opt
    $ chown oracle:oinstall /opt
    $ chown oracle:oinstall /dev/sdc1
    $ chown oracle:oinstall /dev/sdd1
    $ chmod 600 /dev/sdc1
    $ chmod 600 /dev/sdd1
    

Oracle Grid Infrastructure をダウンロードして準備する

Oracle Grid Infrastructure ソフトウェアをダウンロードして準備するには、次の手順を実行します。

  1. Oracle ASM のダウンロード ページから Oracle Grid Infrastructure をダウンロードします。 Bastion を使用してこれらのファイルを asmVM にコピーするため、ダウンロード先に Azure CLI がインストールされている必要があります。 トンネルを使用するため、この手順は Azure Cloud Shell では機能せず、ワークステーションで実行する必要があります。

    Oracle Database 19c Grid Infrastructure (19.3) for Linux x86-64 というダウンロード タイトルの下で、.zip ファイルをダウンロードします。

  2. この .zip ファイルをクライアント コンピューターにダウンロードしたら、Secure Copy Protocol (SCP) を使用してそのファイルを VM にコピーすることができます。 scp コマンドが .zip ファイルの正しいパスを指していることを確認します。

    1. ログインし、必要に応じて「Azure にサインインする」の説明に従って、正しいサブスクリプションを使用していることを確認します

    2. 次の PowerShell コマンドを使用して、ターゲット VM へのトンネルを開きます

      $asmVMid=$(az vm show --resource-group ASMOnAzureLab --name asmVM --query 'id' --output tsv)
      
      az network bastion tunnel --name asmBastion --resource-group ASMOnAzureLab --target-resource-id $asmVMid --resource-port 22 --port 57500
      
    3. 最初のコマンド プロンプトを実行したままにし、2 つ目のコマンド プロンプトを開いて、トンネル経由でターゲット VM に接続します。 この 2 番目のコマンド プロンプトウィンドウでは、次のコマンドを使用して、ローカルコンピューターからターゲット VM にファイルをアップロードできます。 注意すべき点として、asmVM にアクセスするための正しい id_rsa キーファイルが .ssh ディレクトリに存在する必要があります。または、scp コマンドに対する -i パラメーターを使用して別のキー ファイルを指すこともできます。

      scp -P 57500 "LINUX.X64_193000_grid_home.zip"  azureuser@127.0.0.1:.
      
  3. アップロードが完了したら、.zip ファイルを /opt フォルダーに移動し、ファイルの所有者を変更するために、Bastion を使用して Azure の asmVM に SSH で戻ります。

    $ sudo su -
    $ mv /home/azureuser/*.zip /opt
    $ cd /opt
    $ chown oracle:oinstall LINUX.X64_193000_grid_home.zip
    
  4. .zip ファイルを解凍します (Linux のファイル解凍ツールがまだインストールされていない場合はインストールします)。

    $ yum install unzip
    $ unzip LINUX.X64_193000_grid_home.zip -d grid
    
  5. アクセス許可を変更します

    $ chown -R oracle:oinstall /opt/grid
    
  6. クリーンアップ

    $ rm -f LINUX.X64_193000_grid_home.zip
    
  7. root を終了します

    $ exit
    

Oracle Grid Infrastructure のインストール

Oracle Grid Infrastructure をインストールするには、次の手順を実行します。

  1. oracle としてサインインします。 (パスワードの入力を要求されることなくサインインできるはずです)。

    Note

    インストールを開始する前に X Server を起動していることを確認してください。

    $ sudo su - oracle
    $ export DISPLAY=10.0.0.4:0.0
    $ cd /opt/grid
    $ ./gridSetup.sh
    

    asmXServer VM で Oracle Grid Infrastructure 19c インストーラーが開きます。 (インストーラーが起動するまでに数分かかる場合があります)。

  2. [Select Configuration Option](構成オプションの選択) ページで、[Configure Oracle Grid Infrastructure for a Standalone Server (Oracle Restart)](スタンドアロン サーバー用の Oracle Grid Infrastructure の構成 (Oracle Restart)) を選択します。

    Screenshot of the installer's Select Configuration Option page.

  3. [ASM ディスク グループの作成] ページで、次の手順を実行します。

    • [Change Discovery Path](検出パスの変更) をクリックします
    • 検出パスを /dev/oracleasm/disks/* に更新します。
    • ディスク グループの名前 DATA を入力します
    • [冗長性] で、 [外部] を選択します。
    • [割当て単位サイズ] で、 [4] を選択します。
    • [Select Disks](ディスクの選択)/dev/oracleasm/disks/VOL1 を選択します。
    • 次へ をクリックします。

    Screenshot of the installer's Create ASM Disk Group page.

  4. [ASM パスワードの指定] ページで、 [これらのアカウントごとに、同じパスワードを使用] を選択し、パスワードを入力します。

    Screenshot of the installer's Specify ASM Password page.

  5. [Specify Management Options](管理オプションの指定) ページで、EM クラウド コントロールを構成するためのオプションが選択されていないことを確認します。 [次へ] をクリックして、続行します。

    Screenshot of the installer's Specify Management Options page.

  6. [権限付きオペレーティング システム グループ] ページで、既定の設定を使用します。 [次へ] をクリックして、続行します。

    Screenshot of the installer's Privileged Operating System Groups page.

  7. [インストール場所の指定] ページで、既定の設定を使用します。 [次へ] をクリックして次に進みます。

    Screenshot of the installer's Specify Installation Location page.

  8. [root スクリプトの実行構成] ページで、 [構成スクリプトを自動的に実行] チェック ボックスをオンにします。 次に、 [root ユーザーの資格証明を使用] オプションを選択し、root ユーザーのパスワードを入力します。

    Screenshot of the installer's Root script execution configuration page.

  9. 現在のセットアップが失敗し、[Perform Prerequisite Checks](前提条件チェックの実行) ページにエラーが表示されます。 [Fix & Check Again]\(修正して再チェック\) を選択します。

  10. [Fixup Script](修正スクリプト) ダイアログ ボックスで、[OK] をクリックします。

    Screenshot of the installer's Perform Prerequisite Checks page.

  11. [サマリー] ページで、選択した設定を確認し、Install をクリックします。

    Screenshot of the installer's Summary page.

  12. 警告ダイアログ ボックスが表示され、構成スクリプトを特権ユーザーとして実行する必要があると表示されます。 [はい] をクリックして続行します。

    Screenshot of the installer's warning page.

  13. [終了] ページで、[閉じる] をクリックしてインストールを終了します。

    Screenshot of the installer's Finish page.

Oracle ASM をセットアップする

Oracle ASM をセットアップするには、次の手順を実行します。

  1. Bastion ssh セッションから asmVM に oracle としてサインインしていることを確認します。

    以下を実行して、コンテキストを設定します。 前のコマンドからシェルを開いたままの場合は、この手順をスキップできます。

    $ sudo su - oracle
    $ export DISPLAY=10.0.0.4:0.0
    

    Oracle Automatic Storage Management Configuration Assistant を起動します

    $ cd /opt/grid/bin
    $ ./asmca
    

    数分で、asmXServer VM で Oracle ASM Configuration Assistant ウィンドウが開きます。

  2. ツリーの [Disk Groups](データ グループ)[DATA] を選択し、下部にある [Create](作成) ボタンをクリックします。

    Screenshot of the ASM Configuration Assistant.

  3. [ディスク グループの作成] ダイアログ ボックスで、次の作業を行います。

    1. ディスク グループ名として「FRA」を入力します。
    2. [冗長性] オプションで、[外部 (なし)] を選択します。
    3. [Select Member Disks](メンバー ディスクの選択)/dev/oracleasm/disks/VOL2 を選択します
    4. [割当て単位サイズ] で、 [4] を選択します。
    5. [OK] をクリックし、ディスク グループを作成します。
    6. [OK] をクリックし、確認ウィンドウを閉じます。

    Screenshot of the Create Disk Group dialog box.

  4. [終了] を選択して ASM コンフィギュレーション アシスタントを閉じます。

    Screenshot of the Configure ASM: Disk Groups dialog box with Exit button.

データベースの作成

Oracle データベース ソフトウェアは既に Azure Marketplace イメージにインストールされています。 データベースを作成するには、次の手順を実行します。

  1. コンテキストが oracle ユーザーに設定されていることを確認します

    • 以下を実行して、コンテキストを設定します。 前のコマンドからシェルを開いたままの場合、これは必要ない可能性があります。
    $ sudo su - oracle
    $ export DISPLAY=10.0.0.4:0.0
    

    Database Configuration Assistant を実行します

    $ cd /u01/app/oracle/product/19.0.0/dbhome_1/bin
    $ ./dbca
    

    数秒で、asmXServer VM で Database Configuration Assistant ウィンドウが開きます。

  2. [データベース操作] ページで、[データベースの作成] をクリックします。

    Screenshot of the Database Operation page.

  3. [作成モード] ページで、次の手順を実行します。

    1. [Typical configuration](一般的な構成) が選択されていることを確認します。
    2. データベースの名前を入力します: asmdb
    3. [記憶域のタイプ] に、 [Automatic Storage Management (ASM)](自動ストレージ管理 (ASM)) が選択されていることを確認します。
    4. [Database Files Location](データベース ファイルの場所) で、[DATA] の場所を参照して選択します。
    5. [Fast Recovery Area](高速リカバリ領域) で、[FRA]の場所を参照して選択します。
    6. [管理パスワード][パスワードの確認] に入力します。
    7. [Create as Container database](コンテナー データベースとして作成する) が選択されていることを確認します。
    8. [Pluggable database name](プラグ可能データベース名) の値を入力します: pasmdb

    Screenshot of the Database Creation page.

  4. [サマリー] ページで、選択した設定を確認し、[終了] をクリックしてデータベースを作成します。 データベースの作成には 10 分以上かかることがあります。

    Screenshot of the Summary page.

  5. データベースが作成されました。 [完了] ページでは、追加アカウントのロックを解除し、このデータベースを使用したり、パスワードを変更したりすることもできます。 そのようにする場合、[パスワード管理] を選択します。そうしない場合は、[閉じる] をクリックします。

asmXServer VM を削除する

asmXServer VM はセットアップ中にのみ使用されます。 このラボ ドキュメントを完了した後、それを安全に削除できますが、Azure での ASM のラボのセットアップはそのままにしておくことができます。

$ az vm delete --resource-group ASMOnAzureLab --name asmXServer --force-deletion yes

$ az network public-ip delete --resource-group ASMOnAzureLab --name asmXServerPublicIP

Azure での ASM のラボのセットアップを削除する

Azure Marketplace の Oracle DB イメージ上でOracle Automatic Storage Management を正常に構成できました。 この環境が不要になったら、次のコマンドを使用し、リソース グループと、すべての関連リソースを削除できます。

$ az group delete --name ASMOnAzureLab

次のステップ

チュートリアル:Oracle DataGuard の構成

チュートリアル:Oracle GoldenGate の構成

Oracle DB の構築を確認する