Create an Oracle SOA Cloud Service Instance Attached to a Private Subnet

Use the REST API to create an Oracle SOA Cloud Service instance attached to a private subnet.

Note:

You cannot create an Oracle SOA Cloud Service on a private subnet by using the Oracle SOA Cloud Service console.

Before creating an Oracle SOA Cloud Service instance, create an Oracle Cloud Infrastructure native database in the same private subnet. See Create an Oracle Cloud Infrastructure Native Database for Oracle SOA Cloud Service.

  1. Create a request body in JSON format by using the following template, and save it in a plain-text file (for example, create-soacs-instance-on-oci.json).

    Note:

    This template includes only the minimum set of parameters required to create an instance of Oracle SOA Cloud Service running Oracle WebLogic Server 12.2.1.3 Enterprise Edition.
    {
       "region":"us-phoenix-1",
       "edition":"SUITE",
       "purchasePack":"soaosbb2b",
       "vmPublicKeyText":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDOOVKYC3NI6FQd63NTlEGhvGuk7+H69VCYXLC6JGIhaNQGb0DnEukcDVlONInrY0OFKD1NYFGPwuh+C65mgv3af+fCerUedWZwFKzuo+vNikQ9DOI7OIpCN3YHgZW43OmK51G2hfmi7QFjyNpJdUkw2GQb+IlP3lVAF4cQ5Pf1LZfn8oJVfDpAlZuIqR5MBDcoi/dNEO2a6o+Wm5tCOrkTuOLjOFqdWG0ugAsZyz/KwIZL9/ks4AGeM+RrJr8KA6Ck4XlSG62sMD4ph5GZSXQYsvodJjypC8XnAb6nW5LHEq6KYSooG/UBgzUVW0bsxFQoHO1nGtzZmn0KJd5Gu3rt",
       "availabilityDomain":"bcaH:PHX-AD-1",
       "provisionOTD":"true",
       "enableNotification":"false",
       "cloudStorageContainer":"https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/ocitenancey/soabackup",
       "cloudStorageUser":"user@example.com",
       "cloudStoragePassword":"fxuqA)1mt(LJbvJZ<X-.",
       "serviceVersion":"12cRelease213",
       "serviceLevel":"PAAS",
       "serviceName":"den01SOAPriNoOTD",
       "subnet":"ocid1.subnet.oc1.phx.aaaaaaaacukvw55crhp2ekd2f36vltcpsccx43igo3dlezejc3dqwft7dgga",
       "isBYOL":"false",
       "components":{
          "OTD":{
             "loadBalancingPolicy":"LEAST_CONNECTION_COUNT",
             "shape":"VM.Standard2.1"
          },
          "WLS":{
             "adminUserName":"user1",
                 "adminPassword":"password1",
                 "dbaName": "dbuser",
             "dbaPassword": "password2",
             "managedServerCount":"1",
             "connectString": "11.1.4.6:1521/PDB1.privsubnet1.testvcn.oraclevcn.com",
             "shape":"VM.Standard2.1"
          }
       },
       "enableAdminConsole":"true",
       "meteringFrequency":"HOURLY"
    }

    For information about the REST API payload, see REST API for Oracle SOA Cloud Service.

  2. Send the REST API request.
    The following is an example of a REST API request to create an Oracle SOA Cloud Service instance.
    curl -X POST https://soa.oraclecloud.com/paas/api/v1.1/instancemgmt/idcs-33e8886d2e6666e7777d14ffa9999e83/services/soa/instances \
    -u john.smith@example.com:password \
    -H 'X-ID-TENANT-NAME: idcs-33e8886d2e6666e7777d14ffa9999e83' \
    -H 'Content-Type: application/vnd.com.oracle.oracloud.provisioning.Service+json' \
    -d @create-soacs-instance-on-oci.json
    • restEndpoint: The REST endpoint URL of Oracle SOA Cloud Service.

      You can find this URL on the service details page for the service in Oracle Cloud Infrastructure Console.

    • identityServiceID: The identity service ID of your Oracle Cloud account.

      You can find this information on the service details page for any service in Oracle Cloud Infrastructure Console.

    • user: Your Oracle Cloud user name.

    • password: Your Oracle Cloud password.

    • requestBodyFile: The path and name of the file containing the request body.

    For information about the REST API payload, see REST API for Oracle SOA Cloud Service.

    A message similar to the following is displayed, indicating that the request was accepted.
    {
      "details": {
        "message": "Submitted job to create service [mySOACS] in domain [idcs-33e8886d2e6666e7777d14ffa9999e83].",
        "jobId": "50572730"
      }
    }
  3. Wait for the instance to be created.

Note:

The compute nodes of Oracle SOA Cloud Service instances that are attached to private subnets in Oracle Cloud Infrastructure have private IP addresses. So you can’t ssh to the nodes or access the administration consoles of such instances from the public Internet.

You can access the administration consoles and connect to the nodes of such instances through a bastion host attached to a public subnet or through your on-premises network by using IPSec VPN connectivity. See Extend your On-Premises Network with a VCN on Oracle Cloud Infrastructure.

  1. Connect to the Oracle SOA Cloud Service instance through SSH using the bastion node. Note that the bastion VM is in same VCN but in a different public subnet.
    ssh -i opc_key opc@<publicBastionIP>
  2. Inside the bastion node, run the following command to copy the private key to the bastion node, and connect to the Oracle SOA Cloud Service instance through SSH.
    ssh -i /tmp/opc_key opc@privateIP

    Replace privateIP with the WebLogic Server private IP address or the OTD private IP address.