C Create Appliance Using JSON File

Review this section to understand the command odacli create-appliance and to see an example JSON file.

Readme for the Command odacli create-appliance

If you want to create the appliance outside of the Web Console, then review the readme file for details on how to create a JSON file to use with the command-line interface.

You can use the command odacli create-appliance and a JSON file that includes your appliance configuration settings to deploy the appliance instead of using the Web Console.

Note:

It is important to review the readme and the examples carefully before creating your JSON file. If you do not enter your network and Oracle ILOM information correctly based on your setup, you will lose network access to both the host and Oracle ILOM.

Readme

The readme is located in the /opt/oracle/dcs/sample directory. Review the readme carefully along with the provided JSON example files. Create a JSON file with the necessary changes based on your environment and requirements.

Example JSON Files to Create a Single Node Appliance with the CLI

Follow these JSON file examples to create a JSON file to deploy a single node appliance with the command odacli create-appliance.

Use the example JSON files and the information located in the readme as a template to create a file for your environment. Examples and the readme are located in the /opt/oracle/dcs/sample directory.

Note:

If you do not enter your network and Oracle ILOM information correctly based on your setup, then network access is lost to both the host and Oracle ILOM.

When using the example to create your JSON file, change the definitions to match your environment. The password must meet password requirements.

Example C-1 JSON File to Create a Single Node Oracle Database Appliance with Role Separation

The following is an example of a JSON file that creates a single node appliance on Oracle Database Appliance X7-2S or X7-2M. The example uses role separation.

    {
  "instance" : {
    "name" : "odambox",
    "instanceBaseName" : "odambox-c",
    "dbEdition" : "EE",
    "timeZone" : "UTC",
    "ntpServers" : ["10.0.3.14"],
    "dnsServers" : ["10.0.4.10","10.0.4.11","10.0.4.12"],
    "domainName" : "example.com",
    "isRoleSeparated" : true,
    "osUserGroup" : {
      "groups" : [ {
        "groupId" : 1001,
        "groupName" : "oinstall",
        "groupRole" : "oinstall"
      }, {
        "groupId" : 1002,
        "groupName" : "dbaoper",
        "groupRole" : "dbaoper"
      }, {
        "groupId" : 1003,
        "groupName" : "dba",
        "groupRole" : "dba"
      }, {
        "groupId" : 1004,
        "groupName" : "asmadmin",
        "groupRole" : "asmadmin"
      }, {
        "groupId" : 1005,
        "groupName" : "asmoper",
        "groupRole" : "asmoper"
      }, {
        "groupId" : 1006,
        "groupName" : "asmdba",
        "groupRole" : "asmdba"
      } ],
      "users" : [ {
        "userId" : 1000,
        "userName" : "oracle",
        "userRole" : "oracleUser"
      }, {
        "userId" : 1001,
        "userName" : "grid",
        "userRole" : "gridUser"
      } ]
    }
  },
  "nodes" : [ {
    "nodeNumber" : "0",
    "nodeName" : "odambox",
    "network" : [ {
       "nicName" : "btbond1",
       "ipAddress" : "10.0.1.11",
       "subNetMask" : "255.255.240.0",
       "gateway" : "10.0.0.1",
       "networkType" : [ "Public" ],
       "isDefaultNetwork" : true
      },
    ],
    "ilom" : {
      "ilomName":"odambox-c",
      "ipAddress":"10.0.2.10",
      "subNetMask":"255.255.240.0",
      "gateway":"10.0.0.1"
     }
  } ],
  "grid" : {
    "diskGroup" : [ {
      "diskGroupName" : "DATA",
      "redundancy" : "NORMAL",
      "diskPercentage" :80
    }, {
      "diskGroupName" : "RECO",
      "redundancy" : "NORMAL",
      "diskPercentage" :20
    } ],
  "scan" : {
     "scanName":"odambox-scan",
     "ipAddresses":[ 
        "10.0.1.11"
     ]
    },
  "vip":[ 
     { 
        "nodeNumber":"0",
        "vipName":"odambox-vip",
        "ipAddress":"10.0.1.11"
     }
    ],
    "language" : "en",
    "enableAFD":"TRUE"
  },
  "database" : {
    "dbName" : "myTestDb",
    "databaseUniqueName":"myTestDb_sea1kj",
    "dbEdition" : "EE",
    "dbVersion" : "12.2.0.1",
    "dbHomeId":null,
    "instanceOnly" : false,
    "isCdb" : true,
    "pdBName" : "pdb1",
    "pdbAdminuserName" : "pdbuser",
    "enableTDE":true,
    "adminPassword" : "password",
    "dbType" : "SI",
    "dbTargetNodeNumber" : null,
    "dbClass" : "OLTP",
    "dbShape" : "odb1",
    "dbStorage" : "ACFS",
    "dbCharacterSet" : {
      "characterSet" : "AL32UTF8",
      "nlsCharacterset" : "AL16UTF16",
      "dbTerritory" : "AMERICA",
      "dbLanguage" : "AMERICAN"
    },
    "dbConsoleEnable" : false,
    "backupConfigId":null,
    "rmanBkupPassword": null
  },
  "asr" :{
    "asrType": "INTERNAL",
    "userName":"john.smith@example.com",
    "password":"password",
    "proxyServerName":"www-proxy.example.com",
    "proxyPort":"80",
    "proxyUserName":"proxy-user",
    "proxyPassword":"proxy-password",
    "snmpVersion":"v2"
  }
}

Example C-2 JSON File to Create a Single Node Oracle Database Appliance without Role Separation

The following is an example of a JSON file that creates an Oracle Database Appliance without using role separation. This example creates two groups (oinstall and dba) and one user ("oracle").

{
  "instance" : {
    "name" : "odambox",
    "instanceBaseName" : "odambox-c",
    "dbEdition" : "EE",
    "timeZone" : "UTC",
    "ntpServers" : ["10.0.3.14"],
    "dnsServers" : ["10.0.4.10","10.0.4.11","10.0.4.12"],
    "domainName" : "example.com",
    "isRoleSeparated" : false,
    "osUserGroup" : {
      "groups" : [ {
        "groupId" : 1001,
        "groupName" : "oinstall",
        "groupRole" : "oinstall"
      }, {
        "groupId" : 1002,
        "groupName" : "dba",
        "groupRole" : "dba"
      } ],
     "users" : [ {
        "userId" : 1000,
        "userName" : "oracle",
        "userRole" : "oracleUser"
      } ]
    }
  },
  "nodes" : [ {
    "nodeNumber" : "0",
    "nodeName" : "odambox",
    "network" : [ {
       "nicName" : "btbond1",
       "ipAddress" : "10.0.1.11",
       "subNetMask" : "255.255.240.0",
       "gateway" : "10.0.0.1",
       "networkType" : [ "Public" ],
       "isDefaultNetwork" : true
      },
    ],
    "ilom" : {
      "ilomName":"odambox-c",
      "ipAddress":"10.0.2.10",
      "subNetMask":"255.255.240.0",
      "gateway":"10.0.0.1"
     }
  } ],
  "grid" : {
    "diskGroup" : [ {
      "diskGroupName" : "DATA",
      "redundancy" : "NORMAL",
      "diskPercentage" :80
    }, {
      "diskGroupName" : "RECO",
      "redundancy" : "NORMAL",
      "diskPercentage" :20
    } ],
  "scan" : {
     "scanName":"odambox-scan",
     "ipAddresses":[ 
        "10.0.1.11"
     ]
    },
  "vip":[ 
     { 
        "nodeNumber":"0",
        "vipName":"odambox-vip",
        "ipAddress":"10.0.1.11"
     }
    ],
    "language" : "en",
    "enableAFD":"TRUE"
  },
  "database" : {
    "dbName" : "myTestDb",
    "databaseUniqueName":"myTestDb_sea1kj",
    "dbEdition" : "EE",
    "dbVersion" : "12.2.0.1",
    "dbHomeId":null,
    "instanceOnly" : false,
    "isCdb" : true,
    "pdBName" : "pdb1",
    "pdbAdminuserName" : "pdbuser",
    "enableTDE":true,
    "adminPassword" : "password",
    "dbType" : "SI",
    "dbTargetNodeNumber" : null,
    "dbClass" : "OLTP",
    "dbShape" : "odb1",
    "dbStorage" : "ACFS",
    "dbCharacterSet" : {
      "characterSet" : "AL32UTF8",
      "nlsCharacterset" : "AL16UTF16",
      "dbTerritory" : "AMERICA",
      "dbLanguage" : "AMERICAN"
    },
    "dbConsoleEnable" : false,
    "backupConfigId":null,
    "rmanBkupPassword": null
  },
  "asr" :{
    "asrType": "INTERNAL",
    "userName":"john.smith@example.com",
    "password":"password",
    "proxyServerName":"www-proxy.example.com",
    "proxyPort":"80",
    "proxyUserName":"proxy-user",
    "proxyPassword":"proxy-password",
    "snmpVersion":"v2"
  }
}

Example JSON File to Create a Multi-Node Appliance with the CLI

Follow the JSON file example to create a JSON file to deploy a multi-node appliance with the command odacli create-appliance.

Use the example JSON files and the information located in the readme as a template to create a file for your environment. Examples and the readme are located in the /opt/oracle/dcs/sample directory.

Note:

It is important to review the readme and the examples carefully before creating your JSON file. If you do not enter your network and Oracle ILOM information correctly based on your setup, then network access is lost to both the host and Oracle ILOM.

Example C-3 JSON File to Create a Multi-Node Oracle Database Appliance with Role Separation

The following is an example of a JSON file that creates a multi-node appliance on Oracle Database Appliance X7-2-HA bare metal platform. The example uses role separation. When using the example to create your JSON file, change the definitions to match your environment. The password must meet password requirements.

{ 
   "instance":{ 
      "name":"odahabox",
      "instanceBaseName":"odahabox",
      "dbEdition":"EE",
      "timeZone":"UTC",
      "ntpServers" : ["10.0.3.14"],
      "dnsServers" : ["10.0.4.10","10.0.4.11","10.0.4.12"],
      "domainName":"example.com",
      "isRoleSeparated":true,
      "osUserGroup":{ 
         "groups":[ 
            { 
               "groupId":1001,
               "groupName":"oinstall",
               "groupRole":"oinstall"
            },
            { 
               "groupId":1002,
               "groupName":"dbaoper",
               "groupRole":"dbaoper"
            },
            { 
               "groupId":1003,
               "groupName":"dba",
               "groupRole":"dba"
            },
            { 
               "groupId":1004,
               "groupName":"asmadmin",
               "groupRole":"asmadmin"
            },
            { 
               "groupId":1005,
               "groupName":"asmoper",
               "groupRole":"asmoper"
            },
            { 
               "groupId":1006,
               "groupName":"asmdba",
               "groupRole":"asmdba"
            }
         ],
         "users":[ 
            { 
               "userId":101,
               "userName":"grid",
               "userRole":"gridUser"
            },
            { 
               "userId":102,
               "userName":"oracle",
               "userRole":"oracleUser"
            }
         ]
      },
      "objectStoreCredentials":null
   },
   "nodes":[ 
      { 
         "nodeNumber":"0",
         "nodeName":"odahaboxc1n2",
         "network":[ 
            { 
               "nicName":"btbond1",
               "ipAddress":"10.31.98.133",
               "subNetMask":"255.255.240.0",
               "gateway":"10.31.96.1",
               "networkType":[ 
                  "Public"
               ],
               "isDefaultNetwork":true
            }
         ],
         "ilom":{ 
            "ilomName":"odahabox2-c",
            "ipAddress":"10.31.16.140",
            "subNetMask":"255.255.240.0",
            "gateway":"10.31.16.1"
         }
      },
      { 
         "nodeNumber":"1",
         "nodeName":"odahaboxc1n1",
         "network":[ 
            { 
               "nicName":"btbond1",
               "ipAddress":"10.31.98.132",
               "subNetMask":"255.255.240.0",
               "gateway":"10.31.96.1",
               "networkType":[ 
                  "Public"
               ],
               "isDefaultNetwork":true
            }
         ],
         "ilom":{ 
            "ilomName":"odahabox1-c",
            "ipAddress":"10.31.16.139",
            "subNetMask":"255.255.240.0",
            "gateway":"10.31.16.1"
         }
      }
   ],
   "grid":{ 
      "diskGroup":[ 
         { 
            "diskGroupName":"DATA",
            "redundancy":"HIGH",
            "diskPercentage":80
         },
         { 
            "diskGroupName":"RECO",
            "redundancy":"HIGH",
            "diskPercentage":20
         },
         { 
            "diskGroupName":"REDO",
            "redundancy":"HIGH",
            "diskPercentage":null
         }
      ],
      "scan":{ 
         "scanName":"odahaboxc1-scan",
         "ipAddresses":[ 
            "10.31.98.182",
            "10.31.98.183"
         ]
      },
      "vip":[ 
         { 
            "nodeNumber":"0",
            "vipName":"odahaboxc1n2-vip",
            "ipAddress":"10.31.98.159"
         },
         { 
            "nodeNumber":"1",
            "vipName":"odahaboxc1n1-vip",
            "ipAddress":"10.31.98.158"
         }
      ],
      "language":"en",
      "enableAFD":"TRUE"
   },
   "database":{ 
      "dbName":"myTestDb",
      "databaseUniqueName":"myTestDb_sea1kj",
      "dbVersion":"12.2.0.1",
      "dbHomeId":null,
      "instanceOnly":false,
      "isCdb":true,
      "pdBName":"pdb1",
      "pdbAdminuserName":"pdbuser",
      "enableTDE":true,
      "adminPassword":"password",
      "dbType":"RAC",
      "dbTargetNodeNumber":null,
      "dbClass":"OLTP",
      "dbShape":"odb1",
      "dbStorage":"ACFS",
      "dbCharacterSet":{ 
         "characterSet":"AL32UTF8",
         "nlsCharacterset":"AL16UTF16",
         "dbTerritory":"AMERICA",
         "dbLanguage":"AMERICAN"
      },
      "dbConsoleEnable":false,
      "backupConfigId":null
   },
   "asr":null
}