次の方法で共有


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

適用対象: ✔️ Linux VM

Azure 仮想マシン (VM) には、完全に構成可能で柔軟なコンピューティング環境が用意されています。 このチュートリアルでは、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. インストールの最後に [起動] を選択していないことを確認します

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

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

    XLaunch ウィザードの手順 1 のスクリーンショット。

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

    XLaunch ウィザードの手順 2 のスクリーンショット。

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

    XLaunch ウィザードの手順 3 のスクリーンショット。

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

    XLaunch ウィザードの手順 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. root としてサインインして ASM のインストールを続行します (まだ行っていない場合)。

    $ 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 can 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. ファイルを解凍します (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)) を選択します。

    インストーラーの [Select Configuration Option]\(構成オプションの選択\) ページのスクリーンショット。

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

    • [ディレクトリ パスの変更] を選択します
    • 検出パスを /dev/oracleasm/disks/ に更新します。
    • ディスク グループの名前 DATA を入力します
    • [冗長性] で、[外部] を選択します
    • [アロケーション ユニット サイズ] で、[4] を選択します
    • [ディスクの選択]/dev/oracleasm/disks/VOL1 を選択します
    • [次へ] を選択します

    インストーラーの [ASM ディスク グループの作成] ページのスクリーンショット。

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

    インストーラーの [ASM パスワードの指定] ページのスクリーンショット。

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

    インストーラーの [Specify Management Options]\(管理オプションの指定\) ページのスクリーンショット。

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

    インストーラーの [権限付きオペレーティング システム グループ] ページのスクリーンショット。

  7. [インストール場所の指定] ページで、既定の設定を使用します。 [次へ] を選択して続行します。

    インストーラーの [インストール場所の指定] ページのスクリーンショット。

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

    インストーラーの [root スクリプトの実行構成] ページのスクリーンショット。

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

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

    インストーラーの [前提条件チェックの実行] ページのスクリーンショット。

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

    インストーラーの [サマリー] ページのスクリーンショット。

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

    インストーラーの警告ページのスクリーンショット。

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

    インストーラーの [終了] ページのスクリーンショット。

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. [ディスク グループ][データ] を選択し、下部にある [作成] ボタンを選択します。

    ASM Configuration Assistant のスクリーンショット。

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

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

    [ディスク グループの作成] ダイアログ ボックスのスクリーンショット。

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

    [終了] ボタンがある [ASM の構成: ディスク グループ] ダイアログ ボックスのスクリーンショット。

データベースの作成

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. [データベース操作] ページで、[データベースの作成] を選択します。

    [データベース操作] ページのスクリーンショット。

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

    1. [一般的な構成] が選択されていることを確認します
    2. データベースの名前を入力します: asmdb
    3. [ストレージの種類] では、[Automatic Storage Management (ASM)] が選択されていることを確認します
    4. [データベース ファイルの場所] では、データの場所を参照して選択します
    5. [高速復旧領域] では、FRA の場所を参照して選択します
    6. [管理パスワード][パスワードの確認] に入力します
    7. [コンテナー データベースとして作成する] が選択されていることを確認します
    8. [Pluggable database name](プラグ可能データベース名) の値を入力します: pasmdb

    データベース作成ページのスクリーンショット。

  4. [まとめ] ページで、選択した設定を確認した後、[完了] を選択してデータベースを作成します。 データベースの作成には 10 分以上かかる可能性があります。

    [サマリー] ページのスクリーンショット。

  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 の構築を確認する