oraclebase/vagrant

how to add disk

Closed this issue · 2 comments

Hello Tim,

I want to create new diskgroup and I guess it needs to be done via scripts instead of directly from VBOX as it reads "vagrantfile" when we bringup the machine. can you please share some steps to do that.

Thanks
Ajay

I assume you are talking about RAC. In this example I'm assuming the disk group is called NEWDG.

  1. In the config/vagrant.yml file, add another disk definition. Example.

asm_newdg_disk_1: /u05/VirtualBox/shared/ol8_19_rac/asm_newdg_disk_1.vdi
asm_newdg_disk_size: 20

  1. In the Vagrantfile for both node1 and node22 add a new variable.

var_asm_newdg_disk_1 = params['shared']['asm_newdg_disk_1']
var_asm_newdg_disk_size = params['shared']['asm_newdg_disk_size']

And add the creation of the disk into the Provider section.

unless File.exist?(var_asm_newdg_disk_1)
  vb.customize ['createhd', '--filename', var_asm_newdg_disk_1, '--size', var_asm_newdg_disk_size * 1024, '--format', 'VDI', '--variant', 'Fixed']
end
vb.customize ['storageattach', :id, '--storagectl', 'SATA Controller', '--port', 4, '--device', 0, '--type', 'hdd', '--medium', var_asm_newdg_disk_1, '--mtype', 'shareable', '--nonrotational', var_non_rotational]
  1. Edit shared_scripts/configure_shared_disks.sh. Add the extra fdisk

if [ ! -e /dev/sdh1 ]; then
echo -e "n\np\n1\n\n\nw" | fdisk /dev/sdh
fi

Add the extra UDEV stuff. Eg.

ASM_DISK6=/usr/lib/udev/scsi_id -g -u -d /dev/sdh

KERNEL=="sd?1", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id -g -u -d /dev/$parent", RESULT=="${ASM_DISK3}", SYMLINK+="oracleasm/asm-newdg-disk1", OWNER="oracle", GROUP="dba", MODE="0660"

Add the extra partx stuff twice.

/sbin/partx -u /dev/sdh1

  1. Edit node1/scripts/oracle_grid_software_config.sh to add the extra disk group.

CREATE DISKGROUP newdg EXTERNAL REDUNDANCY DISK '/dev/oracleasm/asm-newdg-disk1'
ATTRIBUTE 'compatible.asm'='19.0','compatible.rdbms'='19.0';

I've not tested this, but it should give you an idea of what to do.

Cheers

Tim...

Thank you Tim!