Design Considerations for an Oracle Java Cloud Service Instance

Before creating a custom Oracle Java Cloud Service instance, there are details you should consider in order to create the service instance that best meets your requirements.

This figure illustrates the components that make up a typical service instance:

The next figure illustrates a service instance that has been configured to use Oracle Identity Cloud Service and Oracle Cloud Infrastructure Load Balancing Classic.

Take the following into consideration when designing a service instance:

Details Description

Service Level

You can select one of these service levels:

  • Oracle Java Cloud Service—Virtual Image

    Developer-level service. Supports Oracle Java Cloud Service instance creation and monitoring.

    This service level does not support backup and restoration; patching; or scaling. You cannot provision a domain partition if you specify this service level.

    Oracle recommends using Oracle Java Cloud Service rather than Oracle Java Cloud Service—Virtual Image for better flexibility, control, and rapid availability of new features.

    Support for this service level:

    • Not supported if you have a Universal Credits subscription. This option does not appear on the console.

    • Not supported for Oracle Cloud Infrastructure

    • Supported for Oracle Cloud at Customer

    • Supported if you have a traditional metered subscription

  • Oracle Java Cloud Service

    Production-level service. Supports Oracle Java Cloud Service instance creation and monitoring; domain partitions; backup and restoration; patching; and scaling.

  • Oracle Java Cloud Service Fusion Middleware — Oracle WebCenter Portal

    Leverages your Oracle WebCenter Portal license on Oracle Java Cloud Service.

    Selecting this option downloads additional installation tools to the location /u01/zips/upperstack on the Administration Server node. You must install the product yourself after creating this service instance. See the Provisioning Oracle WebCenter Portal Cloud Service tutorial.

    You must select Oracle WebLogic Server 12c (12.2.1.2.0) as the software release.

    This service level is unavailable for software release WebLogic Server 12c (12.2.1.3.0).

    You must select Enterprise Edition or Enterprise Edition with Coherence. Standard Edition is not supported.

    Note:

    Products that modify MW_HOME, such as Oracle WebCenter Portal, will fail after patching. Because patching replaces the contents of MW_HOME, Oracle WebCenter Portal will fail.
  • Oracle Java Cloud Service Fusion Middleware — Oracle Data Integrator

    Leverages your Oracle Data Integrator license on Oracle Java Cloud Service.

    Selecting this option downloads additional installation tools to the location /u01/zips/upperstack on the Administration Server node. You must install the product yourself after creating this service instance. See the Provisioning Oracle Data Integrator Cloud Service tutorial.

    You must select Oracle WebLogic Server 12c (12.2.1.2.0) as the software release.

    This service level is unavailable for software release WebLogic Server 12c (12.2.1.3.0).

    You must select Enterprise Edition or Enterprise Edition with Coherence. Standard Edition is not supported.

    Note:

    Products that modify MW_HOME, such as Oracle Data Integrator, will fail after patching. Because patching replaces the contents of MW_HOME, Oracle Data Integrator will fail.

Software Release

You can select one of the following Oracle WebLogic Server releases:

See About Oracle Java Cloud Service Offerings and Oracle WebLogic Server Software Releases.

With Oracle Java Cloud Service you can easily apply patches to an existing service instance, but it does not provide automated tooling to upgrade an existing service instance to a newer release of Oracle WebLogic Server.

If you select the Oracle Java Cloud Service for Fusion Middleware service level, you must use Oracle WebLogic Server 12c (12.2.1.2.0) as the software release. The Oracle Java Cloud Service for Fusion Middleware service level is unavailable for software release WebLogic Server 12c (12.2.1.3.0).

Note:

The Virtual Image service level is not supported for service instances created for Oracle WebLogic Server 12.2.1.

Edition

You can choose one of these Oracle WebLogic Server editions:

  • Standard Edition

  • Enterprise Edition

  • Enterprise Edition with Coherence (Suite)

Certain WebLogic Server capabilities are only supported in specific editions. To learn about these editions see:

If you select the Oracle Java Cloud Service for Fusion Middleware service level, you cannot select Standard Edition.

Compute Shape

The shapes available on the provisioning wizard depend on the type of region you selected.

In Oracle Cloud Infrastructure:

If you selected an Oracle Cloud Infrastructure region, the VM.Standard and BM.Standard shapes are supported. The DenseIO and HighIO shapes are unsupported. See Overview of the Compute Service in the Oracle Cloud Infrastructure Services documentation.

In Oracle Cloud Infrastructure Classic:

Oracle Java Cloud Service provides a set of compute shapes that are optimized for different use cases. Choose from a set of all-purpose and memory-intensive shapes. The larger the compute shape, the greater the processing power and the more memory that is available.

Note: Some shapes might not be available in all regions.

All-purpose compute shapes include:

  • OC3: 1 OCPU and 7.5 GB memory

  • OC4: 2 OCPUs and 15 GB memory

  • OC5: 4 OCPUs and 30 GB memory

  • OC6: 8 OCPUs and 60 GB memory

  • OC7: 16 OCPUs and 120 GB memory

  • OC8: 24 OCPUs and 180 GB memory (Not available on Oracle Cloud at Customer)

  • OC9: 32 OCPUs and 240 GB memory (Not available on Oracle Cloud at Customer)

Memory-intensive compute shapes include:

  • OC1M: 1 OCPUs and 15 GB memory

  • OC2M: 2 OCPU and 30 GB memory

  • OC3M: 4 OCPUs and 60 GB memory

  • OC4M: 8 OCPUs and 120 GB memory

  • OC5M: 16 OCPUs and 240 GB memory

See About Shapes in Using Oracle Cloud Infrastructure Compute Classic and About Default Heap Size Settings for Oracle Java Cloud Service Instances.

For a Universal Credits subscription, you will be billed at the Pay-as-you-go rate when you exceed your monthly or annual maximum credit.

WebLogic Cluster

A WebLogic cluster is defined by a compute shape and server count.

You select an initial cluster size of 1, 2, or 4 Managed Servers. In general, the larger the cluster the more application requests that can be processed by your service instance. However, with Oracle Java Cloud Service you can also scale in and out this cluster after you create the service instance.

Another design consideration when selecting the cluster size is continued availability during patching. If the cluster has 2 or more nodes, then during patching, at least 1 node continues to serve requests. This won't be possible with a 1-node cluster.

(Not available on Oracle Cloud Infrastructure) If you enable Oracle Identity Cloud Service on the service instance, you can optionally create up to 8 clusters for the Oracle Java Cloud Service instance. You configure each cluster with its own compute shape and server count. Each cluster can contain a maximum of 8 servers. You might consider creating multiple clusters if, for example, multiple applications or different tiers of your application have different capacity requirements. See Recommended Multi-Tier Architecture in Administering Clusters for Oracle WebLogic Server.

Optionally, you can specify a path prefix for a cluster, which is the URL prefix that's configured on the Oracle Cloud Infrastructure Load Balancing Classic service. The prefix must begin with a slash character, /. For example, a path prefix could be /myURL on cluster1, where the load balancer routes traffic from the URL with this prefix to cluster1. If you do not specify a path prefix, then the path prefix is the cluster name.

Because you must enable Oracle Identity Cloud Service on a service instance to create multiple clusters, a managed server running on Oracle Cloud Infrastructure Load Balancing Classic handles requests to the clusters, rather than Oracle Traffic Director.

For more information about clusters see:

Region

If your identity domain is enabled for regions, you can select a region in which your Oracle Java Cloud Service instance will reside. For list of available regions, see Data Regions for Platform and Infrastructure Services.

When a region is explicitly selected, you can also select an IP network and assign reserved IP addresses to your nodes. When a region is not explicitly selected (No Preference), you cannot select an IP network or use reserved IPs.

To create a service instance based on Oracle Cloud Infrastructure, you must select an Oracle Cloud Infrastructure-specific region. You cannot specify an IP network or use reserved IP addresses for these regions. Instead, you must specify an Availability Domain and a Subnet. See Regions and Availability Domains in the Oracle Cloud Infrastructure Services documentation.

To find out whether an instance is in Oracle Cloud Infrastructure, open the Instance Details pane Instance Details button, and look for the Region field. If the field exists, and if it shows us-phoenix-1, us-ashburn-1, eu-frankfurt-1, or uk-london-1, then the instance is in Oracle Cloud Infrastructure.

Availability Domain

This feature is specific to Oracle Cloud Infrastructure regions.

An availability domain consists of a set of datacenters within an Oracle Cloud Infrastructure region. A region can have multiple isolated availability domains with separate power and cooling, for example. The availability domains within a region are interconnected via a low-latency network. See Regions and Availablilty Domains in the Oracle Cloud Infrastructure Services documentation.

Subnet

This feature is specific to Oracle Cloud Infrastructure regions.

A cloud network is a software-defined network that you set up in Oracle data centers, and a subnet is a subdivision of a cloud network. Each subnet exists in a single availability domain and consists of a contiguous range of IP addresses that do not overlap with other subnets in the cloud network.

If you do not explicitly select a subnet (No Preference), then a subnet is selected automatically from the availability domain you specified.

You can create your own subnet before you provision an Oracle Java Cloud Service instance based on Oracle Cloud Infrastructure. See VCNs and Subnets in the Oracle Cloud Infrastructure Services documentation.

You must satisfy certain subnet and policy prerequisites when you create a subnet for use with Oracle Java Cloud Service instances. See Prerequisites for PaaS Services on Oracle Cloud Infrastructure in the Oracle Cloud Infrastructure Services documentation.

IP Network

If you select an Oracle Cloud Infrastructure Compute Classic region for your service instance, you can also select an IP network in that region.

Using an IP network gives you more control over the configuration of the network in which your service instance is placed. By default, if you select an IP network, each underlying node is auto-assigned a public and private IP address. As a result, the IP address could change each time a service instance is started. To assign fixed public IP addresses to instances attached to the IP network, you can create and use IP reservations.

When you select an IP network during provisioning, you must also select a Oracle Database Cloud Service instance that is on an IP network. If the Oracle Java Cloud Service and Oracle Database Cloud Service are attached to different IP networks, then the two IP networks must be connected to the same IP network exchange. The required access rules for the Oracle Java Cloud Service instance and Oracle Database Cloud Service database deployment to communicate are created automatically.

To select an IP network for a service instance that includes a managed load balancer, which is created when Oracle Identity Cloud Service is enabled, you must first attach an internet-facing load balancer to the IP network.

See:

Public IP Addresses

This feature is specific to Oracle Cloud Infrastructure Classic regions.

If you select an Oracle Cloud Infrastructure Classic region and specify an IP network, you can choose whether to assign public IP addresses to the nodes in your service instance.

If you choose to assign public IP addresses (the default option), then any node that is created during instance provisioning, or is later added as part of a scaling operation, will have a public IP address assigned to it. You will be able to directly access the nodes in the service instance from the public Internet. This option is for use cases where you intend to access your Java EE applications from the public Internet.

If you choose not to assign public IP addresses, then any node that is created during instance provisioning, or is later added as part of a scaling operation, will not have a public IP address assigned to it. You will not be able to directly access the nodes in the service instance from the public Internet. This option is for use cases where you only intend to access your Java EE applications from within your private IP network or from your on-premises data center over a VPN network.

Access rules allow you to further control the nodes and port numbers that are accessible from the Internet. See Creating an Access Rule.

Reserved IP Address

If you select an Oracle Cloud Infrastructure Compute Classic region for your service instance, you can also assign reserved IP addresses to use for the nodes in your service instance. IP addresses are specific to a region.

Reserved IP addresses are persistent. If you create a service instance that uses a set of reserved IP addresses, you can reuse the IP addresses after you delete the instance.

The number of IP addresses you create must match the number of nodes in your service instance cluster. You can either select individual IP addresses for every node or allow Oracle to assign them automatically.

If you have created multiple clusters, the number of IP addresses you create must match the total number of nodes in all the clusters.

See Managing IP Reservations.

Domain Partition

A WebLogic Server 12c domain can optionally be organized into multiple partitions. Each partition is dedicated to running specific applications and related resources, and is managed independently of other partitions in the same domain. You can define partitions when you create a service instance, and you can add or remove domain partitions after you create the service instance by using Fusion Middleware Control. These domain partitions will be created with a default resource management policy. Domain partitions also enable you to create different security realms for the overall WebLogic Server domain and for each partition. Each security realm can have its own identity store with users, credentials and groups.

See About WebLogic Server MT in Using WebLogic Server Multitenant.

You cannot configure domain partitions if you select:
  • The Oracle Java Cloud Service—Virtual Image service level

  • The Oracle Java Cloud Service Fusion Middleware — Oracle WebCenter Portal service level

  • The Oracle Java Cloud Service Fusion Middleware — Oracle Data Integrator service level

  • The Standard Edition of WebLogic Server

  • The 11g release of WebLogic Server

User Authentication

By default, the WebLogic Server domain in a service instance is configured to use the local WebLogic identity store to maintain administrators, application users, groups and roles. These security elements are used to authenticate users and to also authorize access to tools like the WebLogic Server Administration Console.

If your cloud account includes Oracle Identity Cloud Service and Oracle Cloud Infrastructure Load Balancing Classic, an Oracle Java Cloud Service instance can also use Oracle Identity Cloud Service for authentication. As a result, users that access your applications or the administration consoles in this service instance are authenticated against Oracle Identity Cloud Service if they are not found in the local WebLogic identity store. See Using Oracle Identity Cloud Service with Oracle Java Cloud Service.

You cannot configure a service instance to use Oracle Identity Cloud Service if you select:

  • An Oracle Cloud Infrastructure region

  • The Oracle Java Cloud Service—Virtual Image service level

  • The 11g release of WebLogic Server

Administrator Access

By default, remote access to the Administration Server is disabled in an Oracle Java Cloud Service instance for security purposes. This includes the use of the WebLogic Server Administration Console and Fusion Middleware Control Console, as well as remote WebLogic Scripting Tool (WLST) commands. You can enable console access either when you create a service instance, or later after it has been created. See:

Client Access

By default, an Oracle Java Cloud Service instance can be accessed only over secure protocols like HTTPS and SSH. If you plan to access an application through the HTTP port, you can enable this port manually after creating a service instance. See:

The HTTP port is disabled by default only when creating the service instance by using the Oracle Java Cloud Service console. The HTTP port is enabled by default if you create the service instance by using the REST API.

Coherence Data Tier

If you choose to provision an Oracle Coherence data tier in your service instance, Oracle Java Cloud Service creates a a WebLogic Server cluster in the domain to host your in-memory data grid, or cache. This Coherence cluster provides your applications with fast, reliable, and scalable access to frequently used data.

You configure the data grid’s initial cache capacity by configuring the cluster size, the number of nodes, and the number of servers per node. After a service instance is created, you can increase cache capacity by adding more nodes to the data grid cluster. See About Cache Capacity for an Oracle Java Cloud Service—Coherence Instance.

While you can create up to eight application clusters, you can create only one WebLogic Server cluster for the data grid.

Oracle Java Cloud Service can only provision a Coherence data tier in your service instance if you select Enterprise Edition with Coherence (Suite).

Database

Every Oracle Java Cloud Service instance must be associated with an existing relational database that contains the required database schema for Oracle WebLogic Server. Oracle Java Cloud Service provisions the required schema on the selected database. When you create a service instance, you can also associate it with up to four additional databases in order to access your application schemas.

These databases can be hosted on Oracle Database Cloud Service or Oracle Database Exadata Cloud Service. The databases must be in an active state and not currently in the process of being provisioned. Oracle WebLogic Server uses Java Database Connectivity (JDBC) to access the databases.

Take the following into consideration before creating a database deployment:

  • To ensure that you can restore the database for an Oracle Java Cloud Service instance without risking data loss for other service instances, Oracle recommends that you do not use the same Oracle Database Cloud Service database deployment with multiple Oracle Java Cloud Service instances. Backups of an Oracle Database Cloud Service database deployment that is used with multiple Oracle Java Cloud Service instances contain data for all the Oracle Java Cloud Service instances. If you restore the database while restoring an Oracle Java Cloud Service instance, data for all the Oracle Java Cloud Service instances is restored.

  • The required infrastructure database deployment must be created with a backup option other than NONE.

  • You cannot associate an Oracle Java Cloud Service instance with an instance of Oracle Cloud Infrastructure DB System. However, you can manually configure a JDBC data source for your Oracle Cloud Infrastructure DB System after you create a service instance.

  • You cannot specify an application schema database if you create an Oracle Java Cloud Service instance using the BASIC service level of Oracle Java Cloud Service.

  • Oracle Java Cloud Service does not support Oracle Database 18c.

  • Oracle Java Cloud Service supports Oracle Database 12.2 as the infrastructure database, but only for service instances running WebLogic Server 12.2.1. In addition, Oracle Database 12.2 deployments that use Oracle Data Guard, including RAC databases, are not supported.

  • If your database deployment is running Oracle Database 12c, you can create a second pluggable database (PDB) for your application schemas in a single database deployment.

  • (Only applicable on Oracle Cloud Infrastructure) You must specify an Oracle Database Cloud Service database deployment. The Oracle Database Cloud Service database deployment on Oracle Cloud Infrastructure must be in the same region and virtual cloud network (VCN) as the Oracle Java Cloud Service instance you are creating on Oracle Cloud Infrastructure. The cloud service instances do not need to be in the same subnet or availability domain.

  • The following considerations do not apply to Oracle Cloud Infrastructure:

    • To use the BASIC service level of Oracle Database Cloud Service with the BASIC service level of Oracle Java Cloud Service, you must perform additional tasks before you create the Oracle Java Cloud Service instance. See Using a Database Cloud Service - Virtual Image Database Deployment.

    • To use Oracle Database Exadata Cloud Service with your Oracle Java Cloud Service instance, before you create the Oracle Java Cloud Service instance, you must obtain IP reservations for opening the firewalls on the cloud services. See Using an Oracle Database Exadata Cloud Service Database Deployment with Oracle Java Cloud Service.

    • If you specify an IP network, the database deployment for the Oracle Java Cloud Service instance must also be attached to an IP network. If the service instance and the database deployment are attached to different IP networks, the two IP networks must be connected to the same IP network exchange. See Creating an IP Network in Using Oracle Cloud Infrastructure Compute Classic.

See:

Load Balancer

A load balancer routes requests it receives from clients to the WebLogic Servers configured in an Oracle Java Cloud Service instance. Using a load balancer is recommended if you are configuring more than one managed server. A load balancer also gives you the ability to suspend access to an Oracle Java Cloud Service instance temporarily to perform routine maintenance.

Oracle Java Cloud Service supports two load balancer options:

  • A local load balancer that runs within your service instance. This load balancer is patched and maintained like other nodes in your service instance.

  • A load balancer that runs on Oracle Cloud Infrastructure Load Balancing Classic. This managed load balancer is patched and maintained by Oracle.

The local load balancer in Oracle Java Cloud Service is an instance of Oracle Traffic Director (OTD) and is administered through the Load Balancer Console. A service instance can include zero, one or two load balancer nodes. Each load balancer node is assigned a separate public IP address.

The Oracle Cloud Infrastructure Load Balancing Classic option is available only when you enable Oracle Identity Cloud Service on your Oracle Java Cloud Service instance, and is configured automatically for you. A load balancer in Oracle Cloud Infrastructure Load Balancing Classic is automatically deployed on multiple nodes to provide high availability and is accessed by clients using a single public IP address.

You cannot configure a service instance to use Oracle Cloud Infrastructure Load Balancing Classic if you select:

  • An Oracle Cloud Infrastructure region

  • The Oracle Java Cloud Service—Virtual Image service level

  • The 11g release of WebLogic Server

See About the Load Balancer in Oracle Java Cloud Service

Backup Location

When provisioning an Oracle Java Cloud Service instance, you can choose to enable or disable automated backups for the service instance. If you do not configure backups, you will not be able to initiate on-demand backups. You also have the option to configure backups on a service instance after its creation.

Backups are recorded to a specified object storage container. You can create this storage container manually, or Oracle Java Cloud Service can create one automatically while you are provisioning the service instance.

See: