Menginstal Oracle RAC di Solusi Bare Metal
Halaman ini menunjukkan cara menginstal Oracle Real Application Clusters (RAC) di server Solusi Bare Metal Anda.
Deployment
Dalam panduan ini, kita membuat deployment yang menyertakan Oracle RAC 19c yang diinstal di server Solusi Bare Metal. Kita membuat RAC dua node dengan database.
Sebelum memulai
- Pastikan Anda menyediakan infrastruktur yang diperlukan untuk RAC. Ini mencakup dua node, penyimpanan bersama, dan volume khusus untuk menghosting direktori utama Oracle.
- Dalam panduan ini, kita menggunakan proses penginstalan GUI. Jika Anda juga ingin menggunakan proses penginstalan GUI, konfigurasikan Virtual Network Computing (VNC) di salah satu node dengan mengikuti panduan penyiapan Oracle VNC.
- Buat titik pemasangan lokal
/apps
untuk menghosting direktori rumah Oracle dan rumah Grid.
Menginstal RAC
Menginstal RAC di Solusi Bare Metal melibatkan langkah-langkah berikut:
- Siapkan node untuk penginstalan RAC.
- Konfigurasi Oracle ASM.
- Lakukan pemeriksaan pra-penginstalan.
- Instal Oracle RAC.
- Lakukan langkah-langkah pasca-penginstalan.
Menyiapkan node untuk penginstalan RAC
Lakukan langkah-langkah berikut di kedua node, kecuali jika ditentukan lain:
Perbarui file
/etc/hosts
dengan alamat IP berikut untuk RAC:- Alamat IP publik
- Alamat IP pribadi
- Alamat IP virtual
- Alamat IP virtual SCAN
Berikut adalah contoh file
/etc/hosts
yang diubah:10.*.*.* bms-jumphost # public IP addresses for Oracle RAC 192.*.*.* at-2811641-svr001 at-2811641-svr001.localdomain 192.*.*.* at-2811641-svr002 at-2811641-svr002.localdomain # private IP addresses for Oracle RAC 172.*.*.* at-2811641-svr001-priv at-2811641-svr001-priv.localdomain 172.*.*.* at-2811641-svr002-priv at-2811641-svr002-priv.localdomain # virtual IP addresses for Oracle RAC 192.*.*.* at-2811641-svr001-vip at-2811641-svr001-vip.localdomain 192.*.*.* at-2811641-svr002-vip at-2811641-svr001-vip.localdomain # SCAN virtual IP addresses for Oracle RAC 192.*.*.* psoracle-scan psoracle-scan.localdomain 192.*.*.* psoracle-scann psoracle-scan.localdomain 192.*.*.* psoracle-scan psoracle-scan.localdomain
Buat resolusi DNS untuk alamat IP virtual dan alamat IP virtual SCAN.
Kita menggunakan Cloud DNS untuk me-resolve alamat IP virtual dan alamat IP virtual SCAN. Untuk petunjuknya, lihat Mengonfigurasi SCAN dengan Cloud DNS.
Perbarui file
/etc/sysctl.conf
dengan parameter kernel.vi /etc/sysctl.conf # Added for Oracle fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.conf.all.rp_filter = 2 net.ipv4.conf.default.rp_filter = 2 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500
Terapkan update parameter kernel.
/sbin/sysctl -p
Di file
/etc/security/limits.conf
, tambahkan batas resource.vi /etc/security/limits.conf ## Added for Oracle grid soft nofile 1024 grid hard nofile 65536 grid soft nproc 2047 grid hard nproc 16384 grid soft stack 10240 grid hard stack 32768 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768
Tambahkan pengguna dan grup yang diperlukan.
groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper groupadd -g 54327 asmdba groupadd -g 54328 asmoper groupadd -g 54329 asmadmin useradd -u 54321 -g oinstall -G dba,oper,asmdba,asmoper,asmadmin,oracle
Instal paket pra-penginstalan Oracle.
Panduan ini mengasumsikan bahwa Anda telah menyiapkan repositori Oracle.
yum install oracle-database-preinstall-19c
Paket
oracle-database-preinstall-19c
menginstal paket yang diperlukan dan membuat penggunaoracle
serta entri dalam file/etc/sysctl.conf
.Reset sandi untuk pengguna
oracle
.passwd oracle
Instal paket berikut untuk Oracle ASM:
oracleasm-support
kmod-oracleasm
yum install oracleasm-support yum install kmod-oracleasm
Nonaktifkan
SELinux
dengan memperbarui file/etc/selinux/config
.vi /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
Hentikan dan nonaktifkan firewall.
systemctl stop firewalld.service systemctl disable firewalld
Konfigurasi NTP.
Instal paket NTP.
yum install ntp
Mulai layanan
ntpd
.systemctl start ntpd
Perbarui file
/etc/ntp.conf
.Dalam hal ini, kita menyinkronkan dengan host bastion yang merupakan
10.x.x.x
. Server tersebut juga dapat berupa server NTP internal Anda.192.x.x.x
adalah alamat IP server Solusi Bare Metal Anda.vi /etv/ntp.conf restrict 192.x.x.x mask 255.255.255.0 nomodify notrap server 10.x.x.x prefer
Perbarui server NTP untuk mulai menyinkronkan.
ntpdate -qu SERVER_NAME
Jika
avahi-daemon
berjalan, hentikan dan nonaktifkan.systemctl status avahi-daemon ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-08-09 07:51:26 UTC; 23h ago Main PID: 2543 (avahi-daemon) Status: "avahi-daemon 0.6.31 starting up." Tasks: 2 CGroup: /system.slice/avahi-daemon.service ├─2543 avahi-daemon: running [at-2811641-svr001.local] └─2546 avahi-daemon: chroot helper systemctl stop avahi-daemon Warning: Stopping avahi-daemon.service, but it can still be activated by: avahi-daemon.socket [root@at-2811641-svr001 ~]# systemctl disable avahi-daemon Removed symlink /etc/systemd/system/multi-user.target.wants/avahi-daemon.service. Removed symlink /etc/systemd/system/sockets.target.wants/avahi-daemon.socket. Removed symlink /etc/systemd/system/dbus-org.freedesktop.Avahi.service. systemctl status avahi-daemon ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; disabled; vendor preset: enabled) Active: inactive (dead) since Tue 2021-08-10 07:16:28 UTC; 36s ago Main PID: 2543 (code=exited, status=0/SUCCESS)
Buat direktori beranda Oracle dan Grid.
mkdir -p /apps/grid/19.3.0/gridhome_1 mkdir -p /apps/grid/gridbase/ mkdir -p /apps/oracle/product/19.3.0/dbhome_1 chmod -R 775 /apps/ chown -R oracle:oinstall /apps/
Di node pertama, lakukan hal berikut:
- Download file image Oracle Grid Infrastructure.
- Sebagai pengguna
Oracle
, salin file yang didownload ke direktori utama Grid. - Sebagai pengguna
Oracle
, ekstrak file image Oracle Grid Infrastructure.
cp LINUX.X64_193000_grid_home.zip /apps/grid/19.3.0/gridhome_1/ cd /apps/grid/19.3.0/gridhome_1/ unzip LINUX.X64_193000_grid_home.zip
Di salah satu node, siapkan SSH tanpa sandi untuk pengguna Oracle.
cd /apps/grid/19.3.0/gridhome_1/deinstall ./sshUserSetup.sh -user oracle -hosts "at-2811641-svr001 at-2811641-svr002" -noPromptPassphrase -confirm -advanced
Di salah satu node, sebagai pengguna root, instal paket RPM
cvuqdisk
dari direktori rumah Grid.rpm -qa cvuqdisk cd /apps/grid/19.3.0/gridhome_1/cv/rpm/ rpm -iv cvuqdisk-1.0.10-1.rpm Preparing packages... Using default group oinstall to install package cvuqdisk-1.0.10-1.x86_64 rpm -qa cvuqdisk cvuqdisk-1.0.10-1.x86_64
Mengonfigurasi Oracle ASM
Untuk mengonfigurasi Oracle ASM, lakukan langkah-langkah berikut sebagai pengguna root:
Di salah satu node, identifikasi semua LUN bersama yang akan Anda gunakan untuk Oracle ASM.
multipath -ll
Di salah satu node, buat partisi di semua perangkat bersama menggunakan
fdisk
ataugdisk
.fdisk /dev/mapper/DISK_WWID
Ganti kode berikut:
- DISK_WWID: WWID disk.
Contoh outputnya adalah sebagai berikut:
fdisk /dev/mapper/3600a098038314343753f4f723154594e 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 0xf7f8fd23. 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): First sector (2048-2147518463, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-2147518463, default 2147518463): Using default value 2147518463 Partition 1 of type Linux and of size 1 TiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 22: Invalid argument. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks. fdisk -l /dev/mapper/3600a098038314343753f4f723154594e Disk /dev/mapper/3600a098038314343753f4f723154594e: 1099.5 GB, 1099529453568 bytes,2147518464 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 65536 bytes Disk label type: dos Disk identifier: 0xf7f8fd23 Device Boot Start End Blocks Id System /dev/mapper/3600a098038314343753f4f723154594e1 2048 2147518463 1073758208 83 Linux
Jalankan
partprobe
untuk membuat semua partisi baru terlihat.partprobe
Di kedua node, konfigurasikan Oracle ASM.
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 []: oinstall 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
Di kedua node, tetapkan nilai parameter
ORACLEASM_SCANORDER
kedm
dan nilaiORACLEASM_SCANEXCLUDE
kesd
karena server Bare Metal Solution menggunakan perangkat multi-jalur.vi /etc/sysconfig/oracleasm ORACLEASM_SCANORDER="dm" ORACLEASM_SCANEXCLUDE="sd"
Di kedua node, verifikasi konfigurasi Oracle ASM.
oracleasm configure ORACLEASM_ENABLED=true ORACLEASM_UID=oracle ORACLEASM_GID=oinstall ORACLEASM_SCANBOOT=true ORACLEASM_SCANORDER="dm" ORACLEASM_SCANEXCLUDE="sd" ORACLEASM_SCAN_DIRECTORIES="" ORACLEASM_USE_LOGICAL_BLOCK_SIZE="false"
Di kedua node, mulai
oracleasm
.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
Di kedua node, periksa status
oracleasm
.oracleasm status Checking if ASM is loaded: yes Checking if /dev/oracleasm is mounted: yes
Di kedua node, buat disk Oracle ASM di perangkat yang dipartisi multi-jalur.
oracleasm createdisk OCR /dev/mapper/DISK_WWID
Ganti kode berikut:
- DISK_WWID: WWID disk.
Contoh outputnya adalah sebagai berikut:
oracleasm createdisk OCR /dev/mapper/3600a098038314343753f4f723154594e1 Writing disk header: done Instantiating disk: done
Di node pertama, cantumkan nama disk.
oracleasm listdisks
Contoh outputnya adalah sebagai berikut:
DATA01 DATA02 DATA03 DATA04 DATA05 DATA06 FRA01 FRA02 FRA03 OCR
Di node kedua, cantumkan disk yang telah ditandai sebagai disk ASMLIB di node pertama.
oracleasm scandisks
Contoh outputnya adalah sebagai berikut:
Reloading disk partitions: done Cleaning any stale ASM disks... Scanning system for ASM disks... Instantiating disk "DATA01" Instantiating disk "DATA06" Instantiating disk "DATA04" Instantiating disk "OCR" Instantiating disk "DATA05" Instantiating disk "FRA01" Instantiating disk "DATA03" Instantiating disk "FRA03" Instantiating disk "FRA02" Instantiating disk "DATA02"
Di node kedua, cantumkan nama disk.
oracleasm listdisks
Contoh outputnya adalah sebagai berikut:
oracleasm listdisks DATA01 DATA02 DATA03 DATA04 DATA05 DATA06 FRA01 FRA02 FRA03 OCR
Jika disk tidak muncul di node kedua setelah pemindaian, jalankan perintah
partprobe
untuk membuat partisi terlihat.
Melakukan pemeriksaan prapenginstalan
Periksa apakah semua prasyarat untuk penginstalan Oracle Grid Infrastructure
telah terpenuhi. Di node pertama, jalankan skrip runcluvfy.sh
.
./runcluvfy.sh stage -pre crsinst -n at-2811641-svr001,at-2811641-svr002 -verbose
Jika salah satu prasyarat gagal, perbaiki sebelum melanjutkan penginstalan.
Menginstal Oracle RAC
Di node pertama tempat Anda mendownload dan mengekstrak file image Oracle Grid Infrastructure, lakukan langkah-langkah berikut:
- Hubungkan ke server Solusi Bare Metal melalui VNC Viewer.
- Jalankan skrip
gridSetup.sh
. - Di halaman Select configuration option, pilih Oracle Grid Infrastructure for a new cluster, lalu klik Next.
- Di halaman Select cluster configuration, pilih Configure an Oracle standalone cluster, lalu klik Next.
Di halaman Informasi plug and play petak, lakukan hal berikut:
- Pilih Buat SCAN lokal.
- Masukkan nama cluster. Pastikan panjangnya kurang dari 15 karakter.
- Masukkan nama SCAN.
- Masukkan port SCAN.
- Klik Berikutnya.
Untuk menambahkan node kedua, klik Tambahkan, lalu lakukan tindakan berikut:
- Masukkan nama host publik node kedua.
- Masukkan nama host virtual node kedua.
- Klik Oke.
Di halaman Tentukan penggunaan antarmuka jaringan, lakukan hal berikut:
- Untuk setiap antarmuka, di kolom Gunakan untuk, pilih jenis penggunaan. Untuk antarmuka pribadi, pilih ASM & Pribadi.
- Klik Berikutnya.
Di halaman Storage option information, pilih Oracle Flex ASM for storage untuk menyimpan file OCR dan file disk voting di Oracle ASM, lalu klik Next.
Di Create Grid Infrastructure Management Repository, pilih Yes, lalu klik Next.
Langkah ini akan membuat Repositori Pengelolaan Infrastruktur Petak (GIMR).
Di halaman Opsi Repositori Pengelolaan Infrastruktur Petak, pilih Tidak karena kita tidak ingin membuat grup disk terpisah untuk GIMR.
Di halaman Create ASM disk group, lakukan hal berikut:
- Masukkan nama grup disk.
Klik Ubah jalur penemuan dan masukkan jalur penemuan yang benar ke disk Oracle ASM.
Pastikan perangkat dipetakan ke multi-jalur, sehingga disk Oracle ASM Anda tetap aktif meskipun satu jalur tidak berfungsi.
Di halaman Tentukan sandi ASM, lakukan hal berikut:
- Pilih Gunakan sandi yang sama untuk akun ini.
- Masukkan dan konfirmasi sandi.
- Klik Berikutnya.
Di halaman Failure isolation support, pilih Do not use Intelligent Platform Management Interface (IPMI), lalu klik Next.
Di halaman Specify management options, klik Next karena kita tidak mengonfigurasi Oracle Grid Infrastructure dengan Oracle Enterprise Manager.
Di halaman Grup sistem operasi dengan hak istimewa, lakukan hal berikut:
- Untuk semua hak istimewa Oracle ASM, pilih oinstall. Anda juga dapat menggunakan asmdba dan asmoper.
- Klik Berikutnya.
Di halaman Specify installation location, tentukan basis Oracle, lalu klik Next.
Eksekusi skrip root dapat dilakukan secara otomatis jika Anda memiliki sandi root atau jika pengguna
oracle
memiliki hak istimewa sudo. Namun, dalam panduan ini, kita menjalankan skrip secara manual. Oleh karena itu, di halaman Root script execution, klik Next.Di halaman Lakukan pemeriksaan prasyarat, lakukan hal berikut:
Perbaiki kegagalan yang ditampilkan.
Jika Anda telah memperbaiki semua kegagalan yang ditemukan saat menjalankan skrip
runcluvfy.sh
seperti yang dijelaskan di bagian Melakukan pemeriksaan pra-penginstalan, Anda dapat mengharapkan penginstalan yang bersih.Setelah Anda memperbaiki kegagalan, klik Periksa lagi untuk memperbarui status kegagalan menjadi Berhasil.
Klik Berikutnya.
Tinjau ringkasan, lalu klik Install.
Perintah penginstalan meminta Anda untuk menjalankan skrip root di kedua node. Pertama, jalankan skrip di node pertama, lalu di node kedua.
/apps/grid/oraInventory/orainstRoot.sh /apps/grid/19.3.0/gridhome_11/grid/root.sh
Setelah jendela Selesai muncul, klik Tutup.
Melakukan langkah-langkah pasca-penginstalan
Setelah penginstalan Oracle Grid Infrastructure selesai, ikuti langkah-langkah berikut:
Menginstal dan mengonfigurasi software database Oracle.
Untuk penginstalan RAC, pilih opsi penginstalan Software only.
Untuk mengetahui petunjuk menginstal software database Oracle, lihat Blog: Menginstal dan mengonfigurasi Biner Oracle 19c untuk database RAC secara bertahap.
Membuat grup disk Oracle ASM.
Buat entri untuk instance Oracle ASM dalam file
/etc/oratab
.vi /etc/oratab +ASM1:/apps/grid/19.3.0/gridhome_1:N
Tetapkan variabel
ORACLE_SID
danORACLE_HOME
untuk instance Oracle ASM dan hubungkan ke instance tersebut.. oraenv ORACLE_SID = [oracle] ? +ASM1 The Oracle base has been set to /apps/grid/gridbase sqlplus / as sysasm SQL> select INSTANCE_NAME,STATUS from v$instance; INSTANCE_NAME STATUS ---------------- ------------ +ASM1 STARTED
Pastikan disk yang akan ditambahkan memiliki
HEADER_STATUS
PROVISIONED
.SQL> select HEADER_STATUS,STATE,TOTAL_MB/1024,path from v$asm_disk; HEADER_STATUS. STATE PATH ------------ -------- ------------- ------------------------- PROVISIONED NORMAL /dev/oracleasm/disks/DAT01 PROVISIONED NORMAL /dev/oracleasm/disks/DATA02 MEMBER NORMAL /dev/oracleasm/disks/OCR
Buat grup disk dari satu node.
SQL> create diskgroup DATA external redundancy disk '/dev/oracleasm/disks/DATA01','/dev/oracleasm/disks/DATA02'; Diskgroup created. SQL> select name, state, type from v$asm_diskgroup; NAME STATE TYPE ------------------------------ OCR MOUNTED EXTERN DATA MOUNTED EXTERN
Di node lain, login ke instance Oracle ASM dan pasang grup disk.
SQL> select name, state, type from v$asm_diskgroup; NAME STATE TYPE -------------------- ----------- ------ DATA DISMOUNTED OCR MOUNTED EXTERN SQL> alter diskgroup DATA mount; Diskgroup altered. SQL> select name, state, type from v$asm_diskgroup; NAME STATE TYPE ------------------------------ ----------- ------ OCR MOUNTED EXTERN DATA MOUNTED EXTERN
Buat database RAC menggunakan Oracle Database Configuration Assistant (DBCA).
Pastikan Anda memilih Database type sebagai Real Application Cluster Database.
Untuk mengetahui petunjuknya, lihat dokumentasi Oracle.
Penginstalan database RAC telah selesai dan siap digunakan.