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 へのサインイン
Windows、Linux、または Azure Shell で任意のシェルを開きます。
az login コマンドを使用して、Azure サブスクリプションにサインインします。 その後、画面の指示に従います。
$ az login
サブスクリプション名または 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) を作成する
仮想ネットワークをロック ダウンするためのネットワーク セキュリティ グループ (NSG) を作成します。
$ az network nsg create \ --resource-group ASMOnAzureLab \ --name asmVnetNSG
仮想ネットワーク内の通信を許可するための 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
すべての受信接続を拒否する 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
サーバーをホストするサブネットに NSG を割り当てます。
$ az network vnet subnet update --resource-group ASMOnAzureLab --vnet-name asmVNet --name asmSubnet1 --network-security-group asmVnetNSG
Bastion ネットワークを作成する
Bastion サブネットを作成します。 サブネットの名前は AzureBastionSubnet にする必要があります
$ az network vnet subnet create \ --resource-group ASMOnAzureLab \ --name AzureBastionSubnet \ --vnet-name asmVnet \ --address-prefixes 10.0.1.0/24
Bastion のパブリック IP を作成します
$ az network public-ip create \ --resource-group ASMOnAzureLab \ --name asmBastionIP \ --sku Standard
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 に接続します。
- Azure portal から [asmXServer] に移動します
- 左側のナビゲーションで [概要] を見つけます
- 上部のメニューで [接続]>[Bastion] を選択します
- [Bastion] タブを選択します
- [Bastion を使用する] を選択します
X Server を実行するための asmXServer の準備
このラボの以降の手順では、X Server が必要です。 X Server をインストールして起動するには、次の手順を実行します。
ggXServer に Xming X Server for Windows をダウンロードし、すべての既定のオプションを有効にしてインストールします
インストールの最後に [起動] を選択していないことを確認します
スタート メニューから "XLAUNCH" アプリケーションを起動します
[Multiple Windows](複数のウィンドウ) を選択します
[Start no client](クライアントを開始しない) を選択します
[No access control](アクセス制御なし) を選択します
[Allow Access](アクセスの許可) を選択して Windows ファイアウォール経由で X Server を許可します
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 に接続します。
- Azure portal から [asmVM] に移動します
- 左側のナビゲーションで [概要] を見つけます
- 上部のメニューで [接続]>[Bastion] を選択します
- [Bastion] タブを選択します
- [Bastion を使用する] を選択します
スワップ ファイルを作成する
このラボでは、ラボ仮想マシン上のスワップ ファイルが必要です。 スワップ ファイルを作成するには、次の手順を実行します。
ディスクとマウント ポイントを準備する
前に仮想マシン (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
次のコマンドを実行して、スワップ ファイル ディスク上にパーティションを作成し、必要に応じてディスク名 (/dev/sdb) を変更します。
$ parted /dev/sdb --script mklabel gpt mkpart xfspart xfs 0% 100%
作成されたパーティションの名前を確認します。 以下では 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
次のコマンドを実行して、ファイル システム (xfs) を初期化し、ドライブを /swap としてマウントします。
$ mkfs.xfs /dev/sdb1 $ partprobe /dev/sdb1 $ mkdir /swap $ mount /dev/sdb1 /swap
次のコマンドを実行します。
$ blkid
出力には、スワップ ディスク パーティション /dev/sdb1 の行が表示されます。その UUID をメモします。
/dev/sdb1: UUID="00000000-0000-0000-0000-000000000000" TYPE="xfs" PARTLABEL="xfspart" PARTUUID="...."
前の手順の UUID を次のコマンドに貼り付けて実行します。 このコマンドにより、システムが再起動するたびに、ドライブが適切にマウントされます。
$ echo "UUID=00000000-0000-0000-0000-000000000000 /swap xfs defaults,nofail 1 2" >> /etc/fstab
スワップ ファイルを構成する
スワップ ファイル (16 GB) を作成して割り当てます。 このコマンドの実行には数分かかります。
$ dd if=/dev/zero of=/swap/swapfile bs=1M count=16384
アクセス許可を変更してスワップ ファイルを割り当てます。
$ chmod 600 /swap/swapfile $ mkswap /swap/swapfile $ swapon /swap/swapfile
スワップ ファイルが作成されていることを確認します。
$ cat /proc/swaps
Filename Type Size Used Priority /swap/swapfile file 16777212 0 -2
スワップ ファイル設定が再起動後も保持されていることを確認します。
$ 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 のダウンロード)」を参照してください。
root としてサインインして ASM のインストールを続行します (まだ行っていない場合)。
$ sudo su -
次のコマンドを実行して、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
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
ASM が正しく機能するには、特定のユーザーとロールが必要になります。 以下のコマンドは、前提条件のユーザー アカウントとグループを作成します。
$ groupadd -g 54345 asmadmin $ groupadd -g 54346 asmdba $ groupadd -g 54347 asmoper $ usermod -a -g oinstall -G oinstall,dba,asmdba,asmadmin,asmoper oracle
ユーザーとグループが正しく作成されたことを確認します。
$ 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
アプリ フォルダーを作成して所有者を変更します。
$ 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 を設定するには、次の手順を実行します。
次のコマンドを使用して 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 つの構成は非常に重要です。これを行わない場合、ディスクの再起動に関する問題が発生します。ディスク構成を表示します。
$ 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
ディスク /dev/sdc をフォーマットします。次のコマンドを実行し、プロンプトに次のように回答します。
- 新しいパーティションには n
- プライマリ パーティションには p
- 最初のパーティションを選択するには 1
- 既定の最初のセクターには Enter キーを押します
- 既定の最後のセクターには Enter キーを押します
- 変更をパーティション テーブルに書き込むには 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.
前述の
fdisk
コマンドを/dev/sdd
に対して繰り返します$ fdisk /dev/sdd
ディスク構成を確認します。
$ 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
次の構成では、このドキュメントに示しているとおりの正確なコマンドを使用してください。
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
Oracle ASM ディスクを作成します
最初のディスクを作成します
$ oracleasm createdisk VOL1 /dev/sdc1
コマンドの出力は次のようになります
Writing disk header: done Instantiating disk: done
残りのディスクを作成します
$ oracleasm createdisk VOL2 /dev/sdd1
Note
ディスクは、ASMLib のインストールに関するページで説明されているプロセスを使用することで ASMLib 用にマークされます。 ASMLib は、ディスク スキャンと呼ばれるプロセス中にどのディスクがマークされているかを学習します。 ASMLib は、起動するたびにこのスキャンを実行します。 システム管理者は、
oracleasm scandisks
コマンドを使用して強制的にスキャンすることもできます。 ASMLib は、システム内の各ディスクを検査します。 これにより、ディスクが ASMLib 用にマークされているか確認されます。 マークされているディスクは、ASMLib で使用できるようになります。 詳細については、ドキュメント「Oracle ASMLIB を使用したストレージ デバイス パスの永続化の構成」と「マルチパス ディスクでの Oracle ASMLib の構成」を参照してください。Oracle ASM ディスクを一覧表示します
$ oracleasm scandisks $ oracleasm listdisks
コマンドの出力には、次のような Oracle ASM ディスクが一覧表示されます。
VOL1 VOL2
ルートおよび Oracle ユーザーのパスワードを変更します。 インストールの後の段階で使用するため、新しいパスワードをメモしておきます。
$ passwd oracle $ passwd root
フォルダーのアクセス許可を変更します
$ 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 ソフトウェアをダウンロードして準備するには、次の手順を実行します。
Oracle ASM のダウンロード ページから Oracle Grid Infrastructure をダウンロードします。 Bastion を使用してこれらのファイルを asmVM にコピーするため、ダウンロード先に Azure CLI がインストールされている必要があります。 トンネルが使用されるため、この手順は Azure Cloud Shell 経由では機能せず、ワークステーション上で実行する必要があります。
Oracle Database 19c Grid Infrastructure (19.3) for Linux x86-64 というダウンロード タイトルの下で、.zip ファイルをダウンロードします。
この .zip ファイルをクライアント コンピューターにダウンロードしたら、Secure Copy Protocol (SCP) を使用してそのファイルを VM にコピーすることができます。
scp
コマンドが .zip ファイルの正しいパスを指していることを確認します。サインインし、「Azure へのサインイン」の説明に従って、必要であれば、正しいサブスクリプションを使用していることを確認します。
次の 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
最初のコマンド プロンプトを実行したままにし、2 つ目のコマンド プロンプトを開いて、トンネル経由でターゲット VM に接続します。 この 2 番目のコマンド プロンプトウィンドウでは、次のコマンドを使用して、ローカルコンピューターからターゲット VM にファイルをアップロードできます。 asmVM にアクセスするための正しい
id_rsa
キーファイルは.ssh
ディレクトリに存在する必要があることに注意してください。scp
コマンドに対して-i
パラメーターを使用して別のキー ファイルを指定することもできます。scp -P 57500 "LINUX.X64_193000_grid_home.zip" azureuser@127.0.0.1:.
アップロードが完了したら、.zip ファイルを /opt フォルダーに移動し、ファイルの所有者を変更するために、Bastion を使用して Azure の asmVM に SSH で戻ります。
$ sudo su - $ mv /home/azureuser/*.zip /opt $ cd /opt $ chown oracle:oinstall LINUX.X64_193000_grid_home.zip
ファイルを解凍します (Linux のファイル解凍ツールがまだインストールされていない場合はインストールします)。
$ yum install unzip $ unzip LINUX.X64_193000_grid_home.zip -d grid
アクセス許可を変更します
$ chown -R oracle:oinstall /opt/grid
クリーンアップ
$ rm -f LINUX.X64_193000_grid_home.zip
root を終了します
$ exit
Oracle Grid Infrastructure のインストール
Oracle Grid Infrastructure をインストールするには、次の手順を実行します。
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 インストーラーが開きます。 (インストーラーが起動するまでに数分かかる場合があります)。
[Select Configuration Option](構成オプションの選択) ページで、[Configure Oracle Grid Infrastructure for a Standalone Server (Oracle Restart)](スタンドアロン サーバー用の Oracle Grid Infrastructure の構成 (Oracle Restart)) を選択します。
[ASM ディスク グループの作成] ページで、次の手順を実行します。
- [ディレクトリ パスの変更] を選択します
- 検出パスを /dev/oracleasm/disks/ に更新します。
- ディスク グループの名前 DATA を入力します
- [冗長性] で、[外部] を選択します
- [アロケーション ユニット サイズ] で、[4] を選択します
- [ディスクの選択] で /dev/oracleasm/disks/VOL1 を選択します
- [次へ] を選択します
[ASM パスワードの指定] ページで、[これらのアカウントに対して同じパスワードを使用する] オプションを選択し、パスワードを入力します。
[管理オプションの指定] ページで、EM クラウド コントロールを構成するためのオプションが選択されていないことを確認します。 [次へ] を選択して続行します。
[権限付きオペレーティング システム グループ] ページで、既定の設定を使用します。 [次へ] を選択して続行します。
[インストール場所の指定] ページで、既定の設定を使用します。 [次へ] を選択して続行します。
[root スクリプトの実行構成] ページで、 [構成スクリプトを自動的に実行] チェック ボックスをオンにします。 次に、 [root ユーザーの資格証明を使用] オプションを選択し、root ユーザーのパスワードを入力します。
現在のセットアップが失敗し、[Perform Prerequisite Checks](前提条件チェックの実行) ページにエラーが表示されます。 [Fix & Check Again]\(修正して再チェック\) を選択します。
[Fixup Script]\(修正スクリプト\) ダイアログ ボックスで、[OK] を選択します。
[まとめ] ページで、選択した設定を確認した後、
Install
をクリックします。警告ダイアログ ボックスが表示され、構成スクリプトを特権ユーザーとして実行する必要があると表示されます。 [はい] を選択して続行します。
[終了] ページで、[閉じる] を選択してインストールを終了します。
Oracle ASM をセットアップする
以下の手順を実行して Oracle ASM を設定します。
自分が 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 ウィンドウが開きます。
[ディスク グループ] で [データ] を選択し、下部にある [作成] ボタンを選択します。
[ディスク グループの作成] ダイアログ ボックスで、次の作業を行います。
- ディスク グループ名として「FRA」を入力します
- [冗長性] オプションでは、[外部 (なし)] を選択します
- [Select Member Disks](メンバー ディスクの選択) で /dev/oracleasm/disks/VOL2 を選択します
- [アロケーション ユニット サイズ] で、[4] を選択します
- [OK] を選択してディスク グループを作成します
- [OK] を選択して確認ウィンドウを閉じます
[終了] を選択して ASM コンフィギュレーション アシスタントを閉じます。
データベースの作成
Oracle データベース ソフトウェアは既に Azure Marketplace イメージにインストールされています。 データベースを作成するには、次の手順を実行します。
コンテキストが 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 ウィンドウが開きます。
[データベース操作] ページで、[データベースの作成] を選択します。
[作成モード] ページで、次の手順を実行します。
- [一般的な構成] が選択されていることを確認します
- データベースの名前を入力します: asmdb
- [ストレージの種類] では、[Automatic Storage Management (ASM)] が選択されていることを確認します
- [データベース ファイルの場所] では、データの場所を参照して選択します
- [高速復旧領域] では、FRA の場所を参照して選択します
- [管理パスワード] と [パスワードの確認] に入力します
- [コンテナー データベースとして作成する] が選択されていることを確認します
- [Pluggable database name](プラグ可能データベース名) の値を入力します: pasmdb
[まとめ] ページで、選択した設定を確認した後、[完了] を選択してデータベースを作成します。 データベースの作成には 10 分以上かかる可能性があります。
これでデータベースが作成されました。 [完了] ページでは、その他のアカウントがこのデータベースを使用したり、パスワードを変更したりできるようにロックを解除することもできます。 これを行うことを希望する場合は、[パスワード管理] を選択します。そうでない場合は [閉じる] を選択します。
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 DB の構築を確認する