Exadata DCLI Utility for Database Engineer
DCLI:
Distributed command line utility(dcli) provides an option to execute the monitoring and administration commands on multiple servers simultaneously.In exadata database machine , you may need to create the griddisks on all the exadata storage cells frequently. Each time , you need to login to all the storage cells and create the griddisk manually.But dcli will make our life easier once you configured the all the storage cells on any one of the storage cell or on the database node. In this article ,we will see how to configure the dcli on multiple storage cells.
# dcli [Options] [Command]
Options
Option Use
-c CELLNAMES Executes the commands only on those cells (Storage Servers).
-g GROUPFILE Executes the command on the cells mentioned in the file.
-l USERNAME The default user is celladmin; but we can use any other user to use for remote ssh execution. Make sure the user has ssh equivalency across all the cells where you run this command
-n This shows an abbreviated output instead of a long output from each command execution
-r REGEXP Suppresses the output that matches the regular expression
-t Displays the target cells where the command will run
-x script_name The script will be executed on the target cells
-k Establishes the ssh user equivalency
-f FILENAE Copies the files to the other cells but does not execute them. It's useful for copying files and executing them later.
-d DESTFILE Destination directory or file
-s SSHOPTIONS String of options passed through to ssh
--scp=SCPOPTIONS String of options passed through to scp if different from sshoptions
--serial Serialize execution over the cells
--unkey Drop keys from target cell's authorized_keys file
-v Verbose, print extra messages to stdout
--vmstat=VMSTATOPS vmstat command options
--version Show dcli version number
-h, --help Show help message
Importent Commands:
Command to find the image version of all db nodes
[root@exadb-adm01 ~]# dcli -l root -g /root/dbs_group imageinfo|grep "Image version"
exadb-adm01: Image version: 22.1.8.0.0.230211
exadb-adm02: Image version: 22.1.8.0.0.230211
exadb-admnp01: Image version: 22.1.8.0.0.230211
exadb-admnp02: Image version: 22.1.8.0.0.230211
exadb-admnp03: Image version: 22.1.8.0.0.230211
[root@exadb-adm01 ~]#
List celldisks in all Cell servers:
[root@exadbcel-adm01 ~]# dcli -g ~/cell_group -l root "cellcli -e list celldisk attributes name,status"
exadbcel-adm01: CD_00_ash_xd08cel_adm01 normal
exadbcel-adm01: CD_01_ash_xd08cel_adm01 normal
exadbcel-adm01: CD_02_ash_xd08cel_adm01 normal
exadbcel-adm01: CD_03_ash_xd08cel_adm01 normal
exadbcel-adm01: CD_04_ash_xd08cel_adm01 normal
.
.
.
List all Harddisks with name, freespace attributes
[root@exadb-adm01 ~]# dcli -g ~/cell_group_prod -l root "cellcli -e list celldisk attributes name,freespace where disktype=harddisk"
exadbcel-adm01: CD_00_exdbcel_adm01 1.447296142578125T
exadbcel-adm01: CD_01_exadbcel_adm01 1.447296142578125T
exadbcel-adm01: CD_02_exadacel_adm01 1.447296142578125T
exadbcel-adm01: CD_03_exadbcel_adm01 1.447296142578125T
.
.
.
.
[root@exadb-adm01 ~]#