User interface for cloud lifecycle management

By providing multi-user interface management tools in the cloud computing system, tracking and verifying deployment data, managing deployment status and hardware component life cycle, the problem of life cycle management in existing cloud computing systems is solved, and the reliability and efficiency of cloud services are improved.

CN119816849APending Publication Date: 2025-04-11ORACLE INT CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380062897.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-08-25
Filing Date
2023-08-28
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

Existing cloud computing systems lack effective lifecycle management tools, making it difficult to track and manage the deployment status of cloud infrastructure components and the life cycle of hardware components.

Method used

By providing a method to obtain deployment data corresponding to a dedicated cloud using multiple user interfaces, track deployment status, and identify hardware components for a dedicated cloud. The method includes validating deployment data, managing transitions to deployment status, and presenting deployment status with visual representation.

Benefits of technology

It realizes effective management of the life cycle of cloud infrastructure components and hardware components, improves the reliability and efficiency of cloud services, and meets the needs of cloud owners.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119816849A_ABST
    Figure CN119816849A_ABST
Patent Text Reader

Abstract

Techniques are disclosed for managing aspects of hardware that identifies and / or deploys a dedicated cloud ("DRCC") hosted at a customer location. The DRCC may include a cloud infrastructure component provided by a cloud provider but hosted by a computing device located at a customer ("cloud owner") location. Services of the central cloud computing environment may similarly be executed at the DRCC. Multiple user interfaces may be hosted within a central cloud computing. These interfaces may be used to track deployment and regional data of the DRCC. The deployment state may transition from a first state to a second state based at least in part on the tracking, and the deployment state may be presented at one or more user interfaces. Using the disclosed user interface, the user can manage the entire life cycle of the DRCC and its corresponding hardware components.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to U.S. Provisional Application No. 63 / 402,026, entitled “Dedicated Cloud Regions at Customer Premises,” filed on August 29, 2002, U.S. Provisional Application No. 63 / 379,427, entitled “Dedicated Cloud Regions at Customer Premises,” filed on October 13, 2022, and U.S. Non-Provisional Application No. 18 / 456,443, entitled “User Interfaces for Cloud Lifecycle Management,” filed on August 25, 2023, the contents of which are incorporated herein by reference in their entirety for all purposes. Background Art

[0004] In cloud computing, processing and storage are generally performed by one or more service providers implemented in a centralized location. Data can be received from customers at a centralized location, then processed there, and then the processed (or other) data is transmitted back to the customer. However, centralizing cloud infrastructure components may not be ideal for all users. Some users may want to host cloud infrastructure components on hardware located at their premises. These users are generally referred to as "cloud owners." Conventional systems lack the ability to manage the lifecycle of the hardware that hosts these cloud infrastructure components. The techniques discussed in this article are intended to address these aspects of cloud management. Summary of the invention

[0005] In the following description, for the purpose of explanation, specific details are set forth in order to provide a thorough understanding of certain embodiments. However, it is apparent that various embodiments can be implemented without these specific details. The drawings and descriptions are not intended to be limiting.

[0006] Some embodiments may include a method. The method may include obtaining, by an application of a cloud computing environment, deployment data corresponding to a dedicated cloud via multiple user interfaces. In some embodiments, the dedicated cloud may be associated with multiple cloud infrastructure components that provide corresponding cloud services associated with a cloud service provider. In some embodiments, multiple cloud infrastructure components will be hosted by one or more computing devices located at a third-party location. In some embodiments, the third-party location may be associated with a third-party entity different from the cloud service provider. The method may include tracking deployment data by an application based at least in part on input provided via multiple user interfaces. The method may include transitioning, by an application, a deployment state associated with hardware on which the dedicated cloud is deployed. In some embodiments, the deployment state may be transitioned from a first state to a second state based at least in part on tracking. The first state and the second state may each be one of multiple states in a sequence associated with the deployment of the dedicated cloud. The method may include presenting, by an application at one or more of the multiple user interfaces, information indicating a transition from a first state to a second state of the deployment state.

[0007] The method may include validating, by the application, the deployment data based at least in part on performing one or more validation operations on the deployment data provided via the one or more user interfaces.

[0008] In some embodiments, at least one of the plurality of user interfaces is configured to obtain workload data identifying one or more workloads to be performed by a plurality of cloud infrastructure components of the private cloud. The method may also include identifying one or more hardware components for the private cloud based at least in part on the identified one or more workloads. In some embodiments, the one or more hardware components may be identified from a plurality of available hardware components.

[0009] The method may include presenting, by the application, one or more user interface elements that present hardware data specifying one or more hardware components. The method may also include: 1) tracking, by the application, a plurality of deployment conditions corresponding to respective deployments of the plurality of dedicated host regions; 2) generating, by the application, one or more visual representations based at least in part on tracking the plurality of deployment conditions corresponding to the respective deployments; and 3) presenting the one or more visual representations within at least one of the plurality of user interfaces.

[0010] The method may include transitioning, by the application, a regional state associated with provisioning hardware for a dedicated cloud. In some embodiments, the regional state may be transitioned from a third state to a fourth state based at least in part on tracking. In some embodiments, the third state and the fourth state may each be one of a second plurality of states in a second predefined order associated with provisioning regional cloud hardware. The method may include presenting, by the application at one or more user interfaces, an indication that the regional state has transitioned from the third state to the fourth state.

[0011] Systems, computing devices, and computer-readable media are disclosed, each of which may include one or more memories on which instructions corresponding to the methods disclosed herein may be stored. The instructions may be executed by one or more processors of the disclosed systems and devices to perform the methods disclosed herein. One or more computer programs may be configured to perform operations corresponding to the methods by including instructions that, when executed by one or more processors, cause the one or more processors to perform operations. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] To easily identify the discussion of any particular element or act, the most significant digit or digits in a reference number refer to the figure number in which the element is first introduced.

[0013] Figure 1 is a block diagram of an environment for hosting a dedicated regional cloud ("DRCC") at a customer, according to at least one embodiment.

[0014] Figure 2 is a block diagram illustrating an example process for obtaining operational data corresponding to a DRCC according to at least one embodiment.

[0015] Figure 3 is a block diagram illustrating an overview of a number of software tools that may be used by various entities corresponding to a cloud provider and / or a customer, according to at least one embodiment.

[0016] Figure 4 is a block diagram illustrating an exemplary user interface (eg, login page) of a DRCC deployment management application according to at least one embodiment.

[0017] Figure 5 is a block diagram illustrating an exemplary user interface (eg, a customer page) of a DRCC deployment management application according to at least one embodiment.

[0018] Figure 6 is a block diagram illustrating an exemplary user interface (eg, deployment page) of a DRCC deployment management application according to at least one embodiment.

[0019] Figure 7is a block diagram illustrating an exemplary user interface (eg, a deployment details page) of a DRCC deployment management application according to at least one embodiment.

[0020] Figure 8 is a block diagram illustrating interface elements for managing regions via a deployment details page of a DRCC deployment management application according to at least one embodiment.

[0021] Fig. 9 is a block diagram illustrating an exemplary user interface (eg, a region details page) of a DRCC deployment management application according to at least one embodiment.

[0022] Fig.10 is a block diagram illustrating exemplary user interface elements of a region detail page of a DRCC deployment management application according to at least one embodiment.

[0023] Fig.11 is a block diagram illustrating exemplary user interface elements corresponding to an Exceptions tab of a Region Details page according to at least one embodiment.

[0024] Fig.12 is a block diagram illustrating exemplary user interface elements corresponding to a Capacity Forecast tab of a Region Details page of a DRCC deployment management application according to at least one embodiment.

[0025] Fig.13 is a block diagram illustrating an exemplary user interface (eg, a capacity forecast details page) of a DRCC deployment management application according to at least one embodiment.

[0026] Fig.14 is a block diagram illustrating an exemplary user interface (eg, configuration and profit analysis pages) of a DRCC deployment management application according to at least one embodiment.

[0027] Fig.15 is a block diagram illustrating an exemplary user interface (eg, dashboard) of a DRCC deployment management application according to at least one embodiment.

[0028] Fig.16 is a block diagram illustrating an exemplary user interface (eg, a go-live calendar page) of a DRCC deployment management application according to at least one embodiment.

[0029] Fig.17 is a block diagram illustrating an exemplary user interface (eg, a deployment tracker page) of a DRCC deployment management application according to at least one embodiment.

[0030] Fig.18is a block diagram illustrating an exemplary user interface (eg, a hardware prediction page) of a DRCC deployment management application according to at least one embodiment.

[0031] Fig.19 is a block diagram illustrating an exemplary user interface (eg, hardware and networking information pages) of a DRCC deployment management application according to at least one embodiment.

[0032] Fig. 20 is a block diagram illustrating a plurality of user interface elements presented at a user interface (eg, an exception approval mapping page) of a DRCC deployment management application according to at least one embodiment.

[0033] Fig.21 is a block diagram illustrating an exemplary method for managing the lifecycle of a DRCC and its corresponding hardware components in accordance with at least one embodiment.

[0034] Fig. 22 Illustrated is a high-level structure of an exemplary 12-rack chassis footprint upon which an IaaS / DRCC architecture is hosted.

[0035] Fig.23 is a block diagram illustrating a pattern for implementing a cloud infrastructure as a service system including a dedicated region operating as part of a DRCC according to at least one embodiment.

[0036] Fig.24 is a block diagram illustrating one mode for implementing a cloud infrastructure as a service system according to at least one embodiment.

[0037] Fig.25 is a block diagram illustrating another mode for implementing a cloud infrastructure as a service system according to at least one embodiment.

[0038] Fig.26 is a block diagram illustrating another mode for implementing a cloud infrastructure as a service system according to at least one embodiment.

[0039] Fig. 27 is a block diagram illustrating another mode for implementing a cloud infrastructure as a service system according to at least one embodiment.

[0040] Fig.28 is a block diagram illustrating an example computer system in accordance with at least one embodiment. DETAILED DESCRIPTION

[0041] In the following description, various embodiments will be described. For the purpose of explanation, specific configurations and details are set forth in order to provide a thorough understanding of the embodiments. However, it will also be apparent to those skilled in the art that the embodiments may be practiced without the specific details. In addition, well-known features may be omitted or simplified to avoid obscuring the described embodiments.

[0042] introduce

[0043] Infrastructure as a Service (IaaS) is a type of cloud computing. IaaS can be configured to provide virtualized computing resources over a public network (e.g., the Internet). In the IaaS model, cloud computing providers can host infrastructure components (e.g., servers, storage devices, network nodes (e.g., hardware), deployment software, platform virtualization (e.g., hypervisor layer), etc.). In some cases, IaaS providers can also provide various services to accompany these infrastructure components (e.g., billing, monitoring, logging, security, load balancing, and clustering, etc.). Therefore, since these services may be policy-driven, IaaS users can implement policies to drive load balancing to maintain application availability and performance.

[0044] In some cases, IaaS customers can access resources and services over a wide area network (WAN) such as the Internet, and can use the cloud provider's services to install the remaining elements of the application stack. For example, a user can log in to the IaaS platform to create a virtual machine (VM), install an operating system (OS) on each VM, deploy middleware such as a database, create storage buckets for workloads and backups, and even install enterprise software into that VM. The customer can then use the provider's services to perform a variety of functions, including balancing network traffic, troubleshooting application problems, monitoring performance, managing disaster recovery, and more.

[0045] In most cases, the cloud computing model will require the participation of a cloud provider. A cloud provider may, but need not, specialize in providing (e.g., supplying, renting, selling) third-party services of IaaS. In some embodiments, an entity may deploy a private cloud, thereby becoming its own infrastructure service provider.

[0046] In some examples, IaaS deployment is the process of placing a new application or a new version of an application onto a ready application server, etc. It may also include the process of preparing the server (e.g., installing libraries, daemons, etc.). This is typically managed by the cloud provider and is located below the hypervisor layer (e.g., servers, storage devices, network hardware, and virtualization). Therefore, the customer may be responsible for handling (OS), middleware, and / or application deployment (e.g., on self-service virtual machines (e.g., that can be started on demand), etc.). IaaS provisioning can refer to obtaining computers or virtual hosts for use, and even installing required libraries or services on them. In most cases, deployment does not include provisioning, and provisioning may need to be performed first.

[0047] In some examples, the infrastructure may have many interconnected elements. For example, there may be one or more virtual private clouds (VPCs) (e.g., a potential on-demand pool of configurable and / or shared computing resources), also referred to as a core network. In some examples, one or more security group rules may also be provided to define how to set up security for the network and one or more virtual machines (VMs). Other infrastructure elements may also be provided, such as load balancers, databases, etc. The infrastructure may evolve gradually as more and more infrastructure elements are desired and / or added.

[0048] In some cases, continuous deployment techniques can be employed to enable deployment of infrastructure code across various virtual computing environments. In addition, the described techniques can enable infrastructure management within these environments. In some examples, a service team can write code that is expected to be deployed to one or more but typically many different production environments (e.g., across various different geographic locations, sometimes across the world). However, in some examples, the infrastructure on which the code will be deployed must first be set up. In some cases, provisioning can be done manually, resources can be provisioned using a provisioning tool, and / or code can be deployed using a deployment tool once the infrastructure is provisioned.

[0049] Customer-specific regional cloud environments

[0050] The present disclosure relates to lifecycle management of components of a customer dedicated regional cloud (DRCC) (also referred to as a "dedicated cloud"). A DRCC hosts infrastructure and services provided by a cloud service provider (CSP) (also referred to as a "cloud provider"), which are deployed and operated on computing devices physically located in a customer's (e.g., "cloud owner") own data center. Using a DRCC, an enterprise can easily integrate mission-critical database systems with applications previously deployed on expensive hardware on a CSP's highly available and secure infrastructure, thereby creating operational efficiencies and modernization opportunities.

[0051] The DRCC framework brings the full power of the public cloud to on-premises deployments, so enterprises can reduce infrastructure and operating costs, upgrade legacy applications on modern cloud services, and meet the most stringent regulatory, data residency, and latency requirements - all enabled by the CSP's infrastructure, which provides enhanced performance and the highest level of security. Customers have the choice to run all of the CSP's cloud services in their data centers and have flexibility. Customers can choose from all the public cloud services offered by the CSP, including, for example, VMware Cloud, Autonomous Database, Container Engine for Kubernetes, Bare Metal Servers, Exadata Cloud Service, and pay only for the services they consume. The DRCC framework is designed to keep data and customer operations completely isolated from the Internet - control plane and data plane operations remain on-premises - to help customers meet their most stringent compliance and latency requirements. With a fully managed experience and access to new capabilities the moment they become available in the public cloud, the DRCC framework provides cloud-scale security, elasticity, and scale, as well as support for mission-critical workloads with tools to gradually modernize legacy workloads.

[0052] DRCC can provide services and functionality similar to those available in a centralized cloud environment, which is more traditionally managed by a cloud provider at the cloud provider's premises. An example of a centralized cloud (referred to herein as a "central cloud," "OCI cloud," or "public cloud") can be an IaaS environment that is publicly available to many customers and hosted by, for example, Oracle Cloud Infrastructure (OCI). Similar techniques discussed herein can be applied to private label clouds. "Private label cloud" (PLC) refers to a cloud environment that is managed by a cloud provider (e.g., Oracle, etc.) but whose brand is marked as if provided by a third party (e.g., a customer). Although the examples herein are discussed with reference to DRCC, any reference to functionality or features provided in DRCC can be similarly provided in PLC.

[0053] Hosting the cloud at the customer's location creates unique requirements for cloud owners (e.g., DRCC customers). DRCC customers differ from standard public cloud customers due to their heightened responsibility for the facilities that the DRCC runs on. DRCC customers may be more of a partner to the cloud provider than a typical public cloud consumer. While the cloud provider may manage much of the DRCC's infrastructure, the customer has significant responsibilities and interests in ensuring that their DRCC runs efficiently. These responsibilities require that the customer have a different level of insight into the physical infrastructure running in their data center than a public cloud customer would.

[0054] Customers can be provided with tools to effectively manage their DRCC while maintaining the same public cloud (e.g., OCI) experience. DRCC customers will demand a rich set of tools to manage various aspects of their DRCC (e.g., operations and capacity). The technology disclosed herein is different from the public cloud experience in that it increases visibility into the DRCC foundation and its operational activities, thereby enabling users to access (via the Figure 4-Figure 22 data that was previously unavailable and / or inaccessible to customers).

[0055] Field of the Invention

[0056] The disclosed technology is directed to managing the lifecycle of a DRCC and its corresponding hardware components. The technology described herein provides a user (e.g., a user associated with a CSP) with the ability to manage and track various aspects of a DRCC, such as customer data, deployments, deployment status, regions, capacity, hardware, and various metrics and metadata associated with a DRCC and / or DRCC customers. User input can be combined with Figure 4-Figure 20 The discussed interface provides that, utilizing the various attributes input by the user, the system can track the deployment status of the DRCC and various additional metrics associated with the deployment of the hardware components of the DRCC.

[0057] Move to the attached picture, Figure 1 is a block diagram of an environment 100 in which a dedicated regional cloud ("DRCC", or "private cloud") is hosted at a customer's premises and interacts with a cloud provider's public cloud infrastructure, according to at least one embodiment. Region 102 can be one of many DRCCs or private label cloud(s) (e.g., DRCC(s) / PLC(s) 104). In a DRCC, a customer can own the hardware that hosts region 102. Region 102 can be managed by a cloud service provider. In a PLC, a hardware owner (e.g., a cloud customer) can leverage region 102 to provide cloud services to its customers under their own label.

[0058] Region 1002 may include DRCC resource(s) 106, including but not limited to Exadata 108, file system service 110, object storage service 112, block storage service 114, compute service 116, and service(s) 118, which may include any suitable number of services, configured to provide cloud services similar to those accessible within a public cloud. OCI 120 may be an example of a public cloud.

[0059] Region 102 may include DRCC Horizon service 120, which may be configured to obtain capacity and usage data associated with hardware hosting region 102. The capacity and usage data may include any suitable data related to computing, block storage, object storage, file storage, database resources, physical space, server resources, network resources, power consumption, etc. Specific examples of such data may be found below with respect to Figure 4-Figure 22 In some embodiments, the DRCC Horizon service 120 may be configured to communicate with any suitable combination of DRCC resource(s) 106 to obtain any suitable information corresponding to capacity management, expansion management, health and performance tracking, change management, and the like.

[0060] In some embodiments, the DRCC Horizon service 120 may be a lightweight version of the central Horizon service 121 of the OCI 120 and may be configured to provide a subset of the functionality provided by the central Horizon service 121. For example, in some embodiments, the DRCC Horizon service 120 may be configured to obtain only capacity management data, while the central Horizon service 121 may be configured to obtain any suitable combination of capacity management data, scale management data, health and performance tracking data, and / or change management data.

[0061] DRCC Horizon service 120 may store any suitable combination of the obtained data in object storage 122 within a dedicated bucket (e.g., a Horizon bucket) associated with the service. In some embodiments, as discussed in more detail in conjunction with FIG. 30, DRCC Horizon service 120 may operate in a different tenancy than DRCC resource(s) 106 and / or any suitable component of region 102, such as Figure 1 as shown in .

[0062] Region 102 may host an Oracle Control Center (OCC) service 124. OCC service 124 may be configured to obtain any suitable data collected by DRCC Horizon service 120 from object storage 122 (e.g., from a bucket specific / dedicated to DRCC Horizon service 120) and may store the obtained data in an autonomous data warehouse (e.g., ADW 126). ADW 126 may be an example of any suitable data repository (e.g., an object storage bucket accessible and manageable by OCC service 124). In some embodiments, DRCC Horizon service 120 may be configured to store the data it has collected directly to ADW 126, such as Figure 1 The data available to the DRCC Horizon service 120 may only be related to the region 102. The DRCC Horizon service 120 of a given region may not be communicatively connected to any other of the DRCC(s) / PLC(s) 104.

[0063] OCC service 124 may retrieve and provide any suitable portion of the data stored in ADW 126 to DRCC OCC console 128. In some embodiments, DRCC OCC console 128 may be configured to present any suitable portion of the data via any suitable number of user interfaces. Examples of such user interfaces are described below with respect to Figure 4-Figure 22 Using these interfaces, the owner of the hardware hosting region 102 can view the data collected by the DRCC Horizon service 120. The data presented by the DRCC OCC console 128 can be specific to the region 102. Data corresponding to other DRCCs and / or PLCs can be collected and presented via the corresponding components of those environments and cannot be accessed by the DRCC OCC console 128 of the region 102.

[0064] At 130 (e.g., according to a predefined schedule or at any suitable time), any suitable portion of the data of the object store 122 can be imported into a corresponding object store bucket associated with the central horizon service 121. The central horizon service 121 can be configured to retrieve the data from this bucket and store the data in the horizon ADW 132 (a data repository within the OCI 120). In some embodiments, the horizon ADW 132 can be a bucket of an object store of a public cloud that is dedicated to storing data collected by the DRCC horizon service 120. The central horizon service 121 can be configured to retrieve any suitable data from any suitable number of DRCC(s) / PLC(s) 104 for storage at the horizon ADW 132 in this manner. At 134, any suitable portion of the data stored in the horizon ADW 132 can be provided via one or more data visualizations. For example, the data visualization can be presented to a user (e.g., a public cloud operator) via any suitable user interface.

[0065] OCI 120 may execute DRCC cloud card web application 136. At 138, the DRCC cloud card web application may export any suitable data from Horizon ADW 132 from the object storage device bucket associated with the central Horizon service 121. For example, the following may be used in conjunction with Figure 4-Figure 22 Discuss the user interface to present this data.

[0066] At 140, DRCC values ​​and forecast data 142 may be imported into an object storage bucket associated with the central Horizon service 121. DRCC values ​​and forecast data 142 may include any suitable data provided by any external source, including, but not limited to, forecast values ​​corresponding to capacity, usage, costs, orders, revenue, etc. associated with any suitable combination of DRCC(s) / PLC(s) 104. In some embodiments, this information may be provided via any suitable interface (e.g., by the DRCC Cloud Card Web application 136 and / or the DRCC Lifecycle Management Apex application 144).

[0067] In some embodiments, OCI 120 may include a DRCC Lifecycle Management Apex Application 144, which may be configured to obtain and present data stored within MXP ADW 146. In some embodiments, the data presented by DRCC Lifecycle Management Apex Application 144 may be related to any suitable component of DRCC(s) / PLC(s) 104.

[0068] At 148, data may be exported from the Horizon ADW 132 (e.g., a bucket in an object store associated with the central Horizon service 121) and stored in the MXP ADW 146. Such data may be viewable at the DRCC Lifecycle Management Apex application 144. In some embodiments, any suitable data (e.g., user input provided via a user interface hosted by the DRCC Lifecycle Management Apex application 144) may be stored in the MXP ADW 146. At 150, any suitable data stored in the MXP ADW 146 may be imported into an object store bucket associated with the central Horizon service 121 (e.g., the Horizon ADW 132).

[0069] Figure 1 The operation may be performed any suitable number of times to enable users of the public cloud to view data collected at (one or more) DRCC / (one or more) PLC 104 via the application of OCI 120. The data collected by each DRCC Horizon service (e.g., the DRCC Horizon service 120 of region 102) may be viewable at any suitable time using the DRCC OCC console 128. In some embodiments, the DRCC OCC console 128 may be configured to provide user interfaces and / or data visualizations (e.g., the data visualization depicted at 134), which may be similar to the user interfaces and / or data visualizations provided by the DRCC Cloud Card Web application 136 and / or the DRCC Lifecycle Management Apex application 144 and / or the (one or more) data visualization 134. However, these user interfaces, data, and / or data visualizations may be specific to the DRCC / PLC and may not be related to other (one or more) DRCC / (one or more) PLC104.

[0070] Figure 2 is a block diagram illustrating an example process 200 for obtaining operational data corresponding to a DRCC according to at least one embodiment. Figure 2 Depicts the various components of the DRCC, such as Figure 1 The DRCC corresponding to the region 102. The following components and process 200 can be similarly applied to a private tag cloud.

[0071] The DCC 204 may be a software component configured to trigger (eg, by a timer and / or via a predetermined schedule or frequency) the collection of metrics obtained by the DRCC Horizon service 206. The DRCC Horizon service 206 may be Figure 1In some embodiments, the DRCC Horizon service 206 can collect capacity and / or usage data associated with the hosted region 102. The capacity and / or usage data can be associated with any suitable combination of computing resources, object storage devices, block storage devices, file storage devices, database resources, physical space, server devices, networking devices, and / or power consumption. The DRCC Horizon service 206 can be configured to communicate with Figure 1 The DRCC Horizon service 206 may communicate with any suitable combination of (one or more) DRCC resources 106 to obtain any suitable information corresponding to capacity management (e.g., capacity and usage data), expansion management, health and performance tracking, change management, and the like. This data may be collectively referred to as "metric data". The DRCC Horizon service 206 may perform data collection operations according to its own internal schedule or predefined period. The collected data may be stored by the DRCC Horizon service 206 in an object storage device bucket (e.g., a bucket of an object storage dedicated to the Horizon service ("Horizon bucket", not depicted) such as an object storage device bucket). In some embodiments, storing and retrieving data may be performed by issuing a request to an object storage service 208, which may be configured to manage an object storage device (including a Horizon bucket). The DCC 204 may trigger the DataFlow service 210 to retrieve (e.g., read using the object storage service 208) metric data stored in an object storage device bucket at any suitable time or according to any suitable predetermined frequency and / or schedule.

[0072] In some embodiments, DRCC Horizon service 206 may include event adapter 212, which may be configured to similarly call DataFlow service 210 to read metric data from an object storage device bucket (e.g., utilizing a REST API corresponding to object storage service 208). Some embodiments may utilize any suitable combination of DCC 204 and / or event adapter 212 to call the functionality of DataFlow service 210.

[0073] In some embodiments, multiple (e.g., two, three, etc.) instances of DCC 204 can be used for multi-node arbitration and redundancy. That is, each DCC 204 instance can attempt to perform a lock (e.g., a daily lock) of ADW 216. If the lock is successful, the corresponding instance can continue to call the data flow application. If not successful (because another instance of DCC 204 has already locked ADW 216), the instance can stop executing.

[0074] DataFlow service 210 may execute any suitable number of jobs (e.g., Spark jobs 214) to collect and / or transform data from object storage buckets (using a REST API associated with object storage service 208). In some embodiments, Spark jobs 214 may perform any suitable predefined transformations on the collected data and may be configured to write the transformed data to ADW 216 (and Figure 1 Example of ADW 126).

[0075] The console plug-in user interface (UI) 218 ​​can be used to request and / or display any suitable portion of the metric data at any suitable time. In some embodiments, the console plug-in UI 218 is Figure 1 The input provided via the console plugin UI 218 can be provided as a query via the REST API 220 (e.g., directly, or via Figure 1 The REST API 220 may be configured to provide access to region-specific metric data within the ADW 216. In some embodiments, queries may be passed through a DB abstraction layer 222. The DB abstraction layer 222 may be a read-only layer that shields the REST API 220 from the details of how data is stored in an underlying database (e.g., ADW 216).

[0076] Canary service 224 (an example of a health collection service) may be configured to perform health checks 226 of various services and / or components (e.g., DCC 204, DataFlow service 210, DRCC Horizon service 206, object storage service 208, etc.). Health checks 226 (e.g., collection of health-related metrics of the services mentioned above) may be performed at any suitable time, according to any suitable frequency, and / or on a predetermined schedule.

[0077] The ADW lifecycle management application 228 may be a software component configured to manage the lifecycle of an ADW database, including but not limited to managing changes to the schema, scheduling SQL jobs, etc. In some embodiments, the ADW lifecycle management application 228 may utilize Liquibase to manage these aspects of the ADW 216. The lifecycle management operations of the ADW lifecycle management application 228 may be identified based at least in part on reading Liquibase change log data 230 corresponding to the ADW 216.

[0078] Another computing component of the DRCC may perform operations at 232 to install / setup / patch the DataFlow service 210. For example, instructions for performing operations may be stored at the DataFlow service 210 as part of the installation performed at 232. In some embodiments, the operations performed at 232 may include installing and / or rotating credentials for the ADW 216 stored in the Vault service 234.

[0079] Flow 200 may begin at step 1, where credentials for ADW 216 are installed at Vault service 234. At step 2, instructions for DataFlow service 210 and credentials for ADW 216 may be installed.

[0080] At step 3, functionality of DCC 204 may be invoked (e.g., via a function call initiated at event adapter 212, or otherwise via a timer, according to a predetermined schedule or frequency, etc.). In some embodiments, functionality of DCC 204 may be invoked using a REST API corresponding to DCC 204.

[0081] At step 4, DCC 204 may attempt to perform a lock of ADW 216. If unsuccessful, DCC 204 may stop processing and the flow may stop. Otherwise, DCC 204 may call the DataFlow application of DataFlow service 210 at step 5.

[0082] DRCC Horizon service 206 may have previously collected metric data and stored this data in a dedicated bucket associated with the service (not depicted) by executing a PUT data command of object storage service 208. These operations are depicted at step 6 and may occur at any suitable time.

[0083] At step 7, the DataFlow service 210 may read (or otherwise obtain from the object storage service 208) the metric data collected by the DRCC Horizon service 206 and previously stored in the Horizon bucket by the object storage service 208 according to the instructions installed at step 2. A Spark job 214 may be executed by the DataFlow service 210 to collect and / or transform the data. At step 8, the Spark job 214 may be configured to read and / or obtain the password (or other credentials) for the ADW 216 from the Vault service 234. At step 9, the Spark job 214 may write the collected and / or transformed data to the ADW 216 (e.g., using the credentials previously installed at the DataFlow service 210, or the credentials obtained at step 8).

[0084] At step 10 (or any suitable time), input may be received at the console plugin UI 218 to access the metric data stored at the ADW 216. In some embodiments, this input may be received from a user interface presented by the console plugin UI 218. Figure 4-Figure 22 At step 11, the user input may be passed through the REST API 220 and the DB abstraction layer 222 to query the ADW 216 for the requested metric data.

[0085] At any suitable time, ADW lifecycle management application 228 can read Liquibase change log data 230 at step 12 to identify and perform changes to ADW 216. Canary service 224 (an example of a service or application that performs health checks and / or collects health-related data for one or more other components) can perform health checks 226 at step 13 to collect data related to the ADW 216. Figure 2 In some embodiments, the Canary service 224 (e.g., via the REST API 220 and the DB abstraction layer 222) requests the metric data to identify Figure 2 Other components of DRCC (e.g., DRCC Horizon service 206, DataFlow service 210, etc.) and / or components of DRCC (e.g., Figure 1 The health status of (one or more) DRCC resources 106).

[0086] Figure 8 Depicted are example user interfaces (eg, user interface 800, Figure 3 As depicted, user interface 800 presents information about the various DRCC / PLCs (each of which is Figure 1 800 is an example of a real-time customer, contracted customer, and pipeline customer corresponding to (one or more) DRCC / (one or more) PLC 104). As depicted, user interface 800 depicts customer identifiers, status, regions, countries, quantities, and status details of DRCC / PLC. Although provided in a tabular form, the data presented in user interface 800 can be formatted in different ways.

[0087] Figure 3 300 is a block diagram illustrating an overview of a number of software tools available to various entities corresponding to cloud providers and / or customers according to at least one embodiment. Service provider tools (e.g., tool(s) 302) may include management dashboard(s) 305. In some embodiments, management dashboard(s) 305 may be used to view information associated with any suitable number of DRCCs (and / or PLCs), such as Figure 1(one or more) DRCC / (one or more) PLC 104) related life cycle management data and financial information.

[0088] The tool(s) 302 may include any suitable number of deployment management tools 306 (eg, portals) to support deployment of DRCC / PLC (eg, Figure 1 The deployment management tool 306 can be used by DRCC / PLC regional teams, service teams, account teams, etc.

[0089] Tool(s) 302 may include user interface(s) 308. User interface(s) 308 (e.g., Figure 5-Figure 24 ) can be used for any suitable combination of order tracking, event management, facility management, consumption reporting, capacity planning, change management and alerting, etc. In some embodiments, (one or more) user interfaces 308 can be used by DRCC / PLC regional teams, service teams, account teams, etc.

[0090] Tool(s) 302 may include application programming interface(s) (API(s)) 310. API(s) 310 may be used to access metrics data and / or cloud lifecycle management instrumentation (e.g., Figure 2 In some embodiments, the API(s) 310 may be used by DRCC / PLC regional teams and service teams, etc.

[0091] The tool(s) 304 may include a DRCC console 312 ( Figure 1 12). The DRCC console 312 can be used to access metric data and / or data for facility management, consumption reporting, capacity planning, change management, alerts, etc. In some embodiments, the DRCC console 312 can be used by DRCC / PLC regional teams and service teams, etc. The DRCC console 312 can present any suitable combination of this data on any suitable combination of user interfaces.

[0092] Figure 4 4 is a block diagram illustrating an exemplary user interface (UI) 400 (eg, a login page) of a DRCC deployment management application according to at least one embodiment. The UI 400 may be a DRCC management application (eg, Figure 1 DRCC lifecycle management application 144, Figure 2UI 400 may include any suitable data associated with managing hardware, customers, deployments, management tasks, or any suitable aspect of a DRCC or DRCC component.

[0093] As depicted, UI 400 includes shortcut keys 402, which may include any suitable number of links to any suitable number of user interfaces of the DRCC management application. Figure 4 Includes home link 404, deployment link 406, dashboard link 408, customer link 410, online calendar link 412, report link 414, and management link 416. In some embodiments, UI 400 may include a quick link area 418. Quick link area 418 may include any suitable number of user interface elements, such as UI elements 420-442. Each UI element may include any suitable combination of page name, description, and icon, as well as other attributes not depicted. For example, UI element 420 may correspond to a customer page (e.g., Figure 5 In some embodiments, UI 420 includes a page name "Customers", a description (e.g., add, delete, or modify customer details), and an icon 421. In some embodiments, UI 420 corresponds to customer link 410. Selection of UI 420 or customer link 420 may cause the user to be navigated to Figure 5 UI 500.

[0094] As an illustrative example, UI 422 may correspond to deployment link 406. Selection of UI 422 or deployment link 406 may cause the user to be navigated to Figure 6 UI 600. UI element 424 may correspond to dashboard link 408. Selection of UI 424 or dashboard link 408 may cause the user to be navigated to Fig.15 UI 1500. Selection of UI 426 may cause the user to be navigated to Fig.17 UI 1700. Selection of UI 428 may cause the user to be navigated to the Fig.17 The UI element 430 may correspond to the online calendar link 412. Selecting the UI 430 or the online calendar link 412 may cause the user to be navigated to the Fig.16 UI 1600. Selection of UI 432 may cause the user to be navigated to the Fig.17 The customer questionnaire page corresponding to the link 1704. Selection of UI 434 can cause the user to be navigated to Fig.18 UI 1800. Selection of UI 436 may cause the user to be navigated to Fig. 20The exception page corresponding to the UI element 2002 of FIG. 438 can be navigated to the exception page corresponding to the UI element 2002 of FIG. Fig. 20 The UI element 2004 corresponds to the exception mapping page. Selection of UI 440 may cause the user to be navigated to Fig.19 UI 1900. Selection of UI 442 may cause the user to be navigated to an administration page from which the user may access Fig. 20 UI elements 2002-2008.

[0095] UI 400 may include region 450. Any suitable information may be presented in region 450. As depicted, region 450 may include link 452, link 454, link 456, and link 458. In some embodiments, selection of link 452 may cause the user to be navigated to an internal software documentation page. Selection of link 454 may navigate the user to a user interface on which a plurality of questions and answers associated with a deployment management application may be presented. Selection of link 456 may navigate the user to a separate application and / or web page, which the user may use to view service desk information (e.g., to open and / or view tickets associated with software errors). In some embodiments, selection of link 458 may navigate the user to a separate application or launch a separate application, which the user may use to conduct a chat session with one or more other users.

[0096] UI 400 may include region 460, which, as depicted, may display any suitable data related to DRCC management. Figure 4 In the example depicted in , region 460 presents version history data indicating the number of versions implemented / applied and the corresponding patches / bug fixes. In some embodiments, the version history includes the date when the patches / bug fixes were applied (as depicted at 462).

[0097] The data presented in user interface 400 may have different formats and may include additional data or may be absent. Figure 4 Some of the data shown in .

[0098] Figure 5 5 is a block diagram illustrating an exemplary user interface (UI) 500 (eg, a customer page) of a DRCC deployment management application according to at least one embodiment. Figure 4408 ) can navigate the user to UI 500. UI 500 may include various UI elements and options for adding, deleting, and modifying customer data. For example, selection of UI element 504 may cause an additional entry to appear within area 506, as depicted at 508. A new entry including any suitable customer data attribute values ​​may be typed in the new entry. For example, a user may select the point at 508 and enter the name of the customer represented by the newly added row. Row 510 may present any suitable customer data attribute names (e.g., name, geography / geographic region, address line 1, address line 2, city, state, country, market vertical, number of employees, annual revenue, annual information technology (IT) data center (DC) budget, created on (e.g., date the entry was created), created by (e.g., indication of the person who created the entry), etc.). Values ​​corresponding to the customer data attribute names of row 510 may be provided in corresponding positions of the rows presented in area 506. Although Figure 5 Specific numbers and combinations of Customer Data attribute names and attributes are provided in the , but any suitable number and combination of Customer Data names and / or attributes may be used, not necessarily Figure 5 Those presented in .

[0099] Area 506 and Figure 4-Figure 20 Any suitable portion of the UI of can be scrollable (e.g., horizontally and / or vertically). The UI elements within region 514 present a scrolling view of region 506. For example, customer data can be presented at the leftmost position of region 506. Region 512 is intended to present additional customer data attributes / values ​​for the same row as scrolling to the rightmost position of the scrollable region that overlaps regions 506 and 512. In some embodiments, the data and / or UI elements presented to the left side of partition 516 can remain fixed as the content to the right of partition 516 is modified due to the scrolling action / input.

[0100] Any suitable changes to data within regions 506 / 512 may be saved / retained based at least in part on selecting UI element 516 . Figure 5-Figure 20Similar UI elements in can perform the same function (e.g., save the newly added and / or modified data in the corresponding data field to which the UI element is applied), and for the sake of brevity, will not be discussed in detail. In some embodiments, an entry can be selected based at least in part on selecting UI element 518. Or each UI element similar to UI element 518 in the row of region 506 / 512 can be selected based at least in part on selecting UI element 520. UI elements 518 and 520 are represented as check boxes, but any suitable UI element (e.g., radio button, edit box, etc.) can be used similarly to select an entry. In some embodiments, multiple entries can be selected simultaneously. The selection of UI element 522 can make any suitable data field corresponding to the selected entry in region 506 / 512 editable. Action menu 524 can be selected to provide a drop-down menu with additional actions (e.g., delete action). The action selected via the drop-down menu can be applied to any suitable selected entry. For example, after selecting a delete action via action menu 524, any selected row in area 506 / 512 can be deleted. The rows of area 506 / 512 can be rearranged based at least in part on selecting UI element 526 and dragging the row to a desired position in area 506 / 512. As the selected row moves, other rows of area 506 / 512 can be repositioned according to the current position of the selected row. In order to scroll horizontally in area 506 / 512, UI element 528 can be selected and dragged (or otherwise moved) in area 530. In order to scroll vertically in area 506 / 512, UI element 536 can be selected and dragged or otherwise moved to area 538. In addition, UI element 536 can also be manipulated based at least in part on keyboard input, such as page up / page down to scroll vertically and left arrow / right arrow to scroll horizontally. UI elements 528 and 536 may be positioned in regions 530 and 538, respectively, based on these keyboard inputs and the positions within regions 506 / 512.

[0101] UI 500 may include UI element 532 (e.g., a search bar). A search query may be entered within UI element 532. After selecting UI element 534, the search query entered via UI element 532 may be submitted and used to identify matching values ​​for customer data. Any matching attribute values ​​may be highlighted to visually distinguish these values ​​from other unmatched values. By default, the search scope may be set to all columns of search area 506 / 512. UI element 533 may be selected to present a drop-down menu from which one or more options for various search scopes may be presented. For example, an option may be provided within a drop-down menu corresponding to UI element 522 for searching only selected rows (e.g., rows selected via UI element 518, or similar UI elements). Any text provided via UI 532 may then be executed according to the scope selected via UI element 533.

[0102] Any user interface discussed herein may include UI elements 516-538, and these UI elements may be combined with the above within the corresponding user interface. Figure 5 For the sake of brevity, such UI elements will not be discussed further. The data presented in user interface 500 may be formatted in different ways and may include additional data or may be absent. Figure 5 Some of the data shown in .

[0103] Figure 6 600 (eg, a deployment page) of a DRCC deployment management application according to at least one embodiment. Figure 4 Deployment link 406) or Figure 4 Selection of UI 422 may navigate the user to UI 600. UI 600 may include various UI elements and options for adding, deleting, and modifying deployment data. For example, selection of UI element 604 may cause an additional entry to appear in area 606, as depicted at 608. A new entry including any suitable deployment data attribute values ​​may be typed in the new entry. For example, a user may select the point at 608 and enter the name of a customer in the newly added row. Row 610 may present any suitable deployment data attribute names (e.g., deployment identifier (ID), customer name, deployment type, deployment status, activity, number of years deployed, geography / geographic region, opportunity (opp) ID, overlapping contact point, created on (e.g., date the entry was created), created by (e.g., indication of the person who created the entry), etc.). Values ​​corresponding to the deployment data attribute names of row 610 may be provided in corresponding locations of the rows presented in area 606. Although in Figure 6Specific numbers and combinations of deployment data property names and properties are provided in , but any suitable number and combination of deployment data names and / or properties may be used, not necessarily Figure 6 Any suitable portion of UI 600 (eg, area 606) may be scrollable (eg, horizontally and / or vertically).

[0104] In at least one embodiment, the system can automatically generate a deployment ID (e.g., deployment ID 622) for the newly added entry. Each entry in area 606 can be associated with a deployment type (e.g., onboarding, extension, expansion, etc.). In some embodiments, the deployment type "onboarding" can refer to a deployment that is not yet running in the data center, but is in the planning stage to be ready for operation. "Extension" refers to a deployment type that extends an already existing DRCC to operate at the customer site for an extended period of time (e.g., longer than originally agreed). "Extension" refers to a deployment type associated with extending the hardware components at the customer site to provide more capacity to the customer's DRCC. The "deployment status" attribute can be any suitable value (e.g., pre-prospect, prospect, qualification review in progress, qualified, approved 1, approved 2, deployed) to indicate the status of the deployment. The value corresponding to the data attribute "active" can be used to toggle or otherwise hide the row corresponding to the attribute. The deployment years attribute is intended to refer to the number of years the DRCC is expected to operate at the customer site. The geographic region attribute can be used to indicate the geographic region where the DRCC is located (or will be located).

[0105] In some embodiments, UI 600 may include UI element 612, which may include a drop-down menu from which one or more reports may be selected. Selecting from UI element 612 may cause the data presented in area 606 to be updated to present any suitable data corresponding to the selected report.

[0106] In some embodiments, UI 600 may include UI element 614, which may be used to select one or more filters and / or sorting parameters from a set of predefined filters / sorting parameters. For example, UI element 614 may be selected to present a set of filters from which UI element 616 and UI element 618 may be selected. UI element 614 may be selected again to display only the selected filters / sorting parameters, in this case, corresponding to UI elements 616 and 618. In some embodiments, the selected filters / sorting parameters may be used alone or together. As a non-limiting example, UI element 616 may be presented to indicate that the filter is being applied to the attribute "deployment status" corresponding to column 620. UI element 618 may indicate specific values ​​of the attributes indicated by UI 616, including "provided", "suspended" and "rejected". Selecting UI elements 616 and 618 may cause filtering, wherein the rows of area 606 (and any currently invisible portions of area 606) may be filtered so that rows with values ​​of "provided", "suspended" or "rejected" in column 620 are not presented. Filtering in other figures below and in combination with the above Figure 6 The discussion is done in a similar manner to the depiction.

[0107] The data presented in user interface 600 may be formatted in different ways and may include additional data or may be absent. Figure 6 Selecting a deployment ID (eg, deployment ID 622 ) may navigate the user to UI 700 .

[0108] Figure 7 6 is a block diagram illustrating an exemplary user interface (UI) 700 (e.g., a deployment details page) of a DRCC deployment management application according to at least one embodiment. UI 700 may be presented in response to selecting a link associated with a deployment ID (e.g., deployment ID 622). UI 700 may include various UI elements and options for adding, deleting, viewing, and modifying deployment details (e.g., properties and corresponding values, documents, etc.) corresponding to a particular deployment (e.g., as depicted, a deployment corresponding to deployment ID 1621).

[0109] In some embodiments, UI 700 includes region 702. Region 702 can present any suitable deployment data corresponding to a particular deployment (e.g., a deployment for customer A associated with deployment ID 1621). In some embodiments, the deployment data can include, but is not limited to, a deployment identifier, a customer identifier, a deployment type, an age, a deployment owner (PM owner), a coverage point of contact (POC), a creation date, a creator, etc.). Any suitable portion of the deployment data can be presented in region 702. In some embodiments, the deployment data of region 702 can remain fixed as the user navigates and / or interacts with other UI elements of UI 700. In some embodiments, if the user scrolls vertically within UI 700, region 702 can remain fixed to persistently present the deployment data, or region 702 can be scrolled (e.g., possibly off-screen) based at least in part on any suitable scrolling action or input.

[0110] Area 704 may include additional deployment details and sequence representations. Figure 7 , region 704 includes a sequence representation indicating all possible values ​​and a sequential order of these values, which indicates the progression of the deployment state from the pre-foreground state to the deployed provisioned state. Region 704 may include a graphical element 706 representing a second state (e.g., foreground) of the sequence representation 708, which corresponds to the "foreground" state. The DRCC deployment management application may track deployment data (including any suitable updates to the deployment data provided via UI 400-1900, or as a result of input provided via UI 400-1900) to identify one or more conditions, when these conditions are met, indicating that the state transition is reasonable. Based on this indication, the DRCC deployment management application may transition the deployment from one state to another based on the indication that the deployment state and the transition are reasonable. In some embodiments, a graphical element (e.g., graphical element 710) representing the current state of the deployment (e.g., pre-foreground) may be colored, or otherwise visually distinguished from graphical elements corresponding to other possible deployment states. Coloring (or other visual distinction) may provide an indication of the current state of the deployment to the user at a glance.

[0111] As depicted, region 712 may include any suitable number of tabs corresponding to respective portions of UI 700. Region 714 may present any suitable number of options corresponding to the selections provided in region 712. For example, selecting tab 716 corresponding to "Customer Questions" may cause a plurality of options to be provided within region 714. The options provided in region 714 may include "Cloud Strategy" (corresponding to option 716), Notable Events, Use Cases, Competition, Workloads, and Information and Timelines. The data provided within region 720 may be updated to correspond to the selections made within regions 712 and 714. By default, tab 716 ("Customer Questions") and option 718 may be selected, and a plurality of customer questions corresponding to cloud strategy may be accessible. For example, a first question (e.g., question 722, "What is the customer's cloud public / private strategy?") and other questions may be presented in region 720. Selecting other options within region 714 may cause other customer questions corresponding to each option to be presented in region 720, thereby replacing any previously displayed questions corresponding to different options. The user may select UI element 724 and then select UI element 726 to make the attribute value of the row corresponding to UI element 724 editable. The user may select 728 to save the changes made at 726 and 728. Attribute value 732 may be used to indicate whether a specific question is required to submit the deployment request. In some embodiments, the DRCC deployment management application may be configured to perform a plurality of predefined validation operations to validate and verify all required responses corresponding to the questions of any option provided within region 714 (e.g., before enabling the DRCC deployment request (e.g., DRCC hardware order) to be submitted for review and approval).

[0112] Customer questions corresponding to notable events may include any suitable questions (e.g., questions selected from a predefined set of questions associated with a notable event question category), including, but not limited to:

[0113] Are customers deploying new applications (e.g., AI applications)?

[0114] Is the customer deploying a brand new data center?

[0115] Are there any data center / application modernization initiatives?

[0116] Is there a private cloud refresh?

[0117] Is there an Exadata / OCC1 refresh?

[0118] Is this driven by compliance / security requirements?

[0119] Customer has existing workloads in OCI?

[0120] A plurality of notable event questions may be selected from a predefined set of questions (eg, selected based at least in part on association with a notable event question category) and presented upon selection of a notable event question option.

[0121] Use case questions (e.g., questions associated with a use case question category) may ask any suitable questions related to how a customer intends to use the DRCC (e.g., "Does the user intend to use the DRCC for low latency applications?", "Is the OCI public region an option for the customer's workload?", "What is the customer's disaster recovery strategy?", etc.). Multiple use case questions may be selected from a predefined set of questions (e.g., selected based at least in part on being associated with a use case question category) and presented upon selection of a use case question option.

[0122] The customer questions associated with the competitive questions category can be questions that ask any suitable questions about the customer's public and / or private cloud competitors (e.g., "Who are the customer's public cloud competitors?", "Who are the customer's private cloud competitors?", etc.). A plurality of competitive questions can be selected from a predefined set of questions (e.g., selected based at least in part on being associated with the competitive questions category) and presented upon selection of the competitive questions option.

[0123] In some embodiments, the customer questions associated with the workload question category may include any suitable questions for determining any suitable aspect of the customer's workload. For example, the workload question may include "What is the customer's primary workload in terms of DRCC?" (e.g., the name of the workload, a mapping of the customer's workload to the corresponding OCI service, etc.). A plurality of workload questions may be selected from a predefined set of questions (e.g., selected based at least in part on being associated with the workload question category) and presented upon selection of the workload question option.

[0124] In some embodiments, the information and technical questions category may include any suitable questions selected from a predefined set of questions corresponding to the information and technical questions category. Some example questions include "Who is the key decision maker on the customer side?", "What is the customer's budget for the DRCC?", "Describe the customer's sales cycle.", "What is the timeline for application migration?", "Does the customer need migration services?", etc. A plurality of information and technical questions may be selected from the predefined set of questions (e.g., selected based at least in part on being associated with the information and technical questions category) and presented upon selection of the information and technical questions option.

[0125] The data presented in user interface 700 may be formatted in different ways and may include additional data or may be absent. Figure 7 Selecting tab 734 may navigate the user to UI 800.

[0126] Figure 8 is a block diagram illustrating user interface elements for managing regions via a deployment details page (eg, user interface (UI) 800) of a DRCC deployment management application according to at least one embodiment. The UI 800 may be Figure 7 Example of UI 700. Area 802 can be associated with Figure 7 804 (e.g., Figure 7 UI 800 may include various UI elements and options for adding, deleting, and modifying regional data corresponding to one or more regions. For example, selection of UI element 806 may cause additional entries within region 808 to appear, as depicted by row 811 at 810. Figure 5 The new entry is inserted at the top position of the entries in the area 512 of FIG. 5 , but it should be appreciated that the new entry may be inserted at any suitable position, such as Figure 8 The bottom-most position of the item depicted in .

[0127] Any suitable regional data attribute values ​​may be provided within the new entry (e.g., via text entry), or may be selected from user interface elements, menus, and options provided within the attribute area. In one example, a user may select point 810 and enter the name of the region represented by the newly added row. Row 812 may present any suitable customer data attribute names for regional data (e.g., Data Center ID, Name, Geographic / Geographic Region, Address Line 1, Address Line 2, etc.). Values ​​corresponding to the regional data attribute names of row 812 may be provided in corresponding locations of the rows presented in area 806. Although Figure 8 Specific numbers and combinations of regional data attribute names and attributes are provided in the , but any suitable number and combination of customer data names and / or attributes may be used, not necessarily Figure 5 The system and / or DRCC deployment management application may generate a data center ID for the newly entered data upon selecting UI element 822. Generating the data center ID may rely on performing a plurality of predefined validation operations to validate the attribute values ​​provided within row 811 according to a predefined set of protocols associated with validating attribute values ​​corresponding to regional data.

[0128] A UI element 816 may be provided to submit a deployment request. In some embodiments, UI element 816 may be disabled until a plurality of predefined conditions are met. For example, UI element 816 may remain disabled until at least one region is defined and a response has been provided for each required customer question (e.g., via selection tab 818 ( Figure 7 Example of tab 716) after the UI element is rendered).

[0129] The data presented in user interface 800 may be formatted in different ways and may include additional data or may be absent. Figure 8 Selecting data center ID 820 may navigate the user to UI 900 .

[0130] Fig. 9 is a block diagram illustrating an exemplary user interface (UI) 900 (eg, a region details page) of a DRCC deployment management application according to at least one embodiment. The UI 900 may be displayed in the selection Figure 8 The data center ID appears after 820.

[0131] In some embodiments, UI 900 includes region 902. Region 902 may present any suitable regional data corresponding to a particular region (e.g., a region associated with data center ID 1661) and / or deployment data associated with that region. In some embodiments, the data presented within region 902 may include, but is not limited to, a deployment identifier, a customer identifier, a deployment type, a deployment status, an age, a hardware order date, a PM owner and / or contact information about it, a creation date, a creator, etc.). Any suitable combination of deployment data and / or regional data may be presented in region 902. In some embodiments, the deployment data of region 902 may remain fixed as the user navigates to and / or interacts with other UI elements of UI 900. In some embodiments, if the user scrolls vertically within UI 900, region 902 may remain fixed to persistently present the deployment data, or region 902 may be scrolled (e.g., possibly off screen) based at least in part on any suitable scrolling action or input.

[0132] Area 904 may include additional regional details and sequence representations. Fig. 9, region 904 includes a sequence representation that visually indicates all possible values ​​and a sequential order of those values, the sequential order representation representing the progression of the state of a region from a first state (e.g., a site unprovisioned state) to a final state (e.g., a site provisioned state) through any suitable number of intermediate states (e.g., as depicted, through a subscription order booked state and a hardware booked state). The number and particular states presented are not intended to limit the present disclosure, and a different number and / or combination of states may similarly be utilized. Region 904 may include a graphical element 906 representing a second state (e.g., a subscription order booked) of sequence representation 908, the second state corresponding to the "subscription order booked" state. The DRCC deployment management application may track region data (including any suitable updates to the region data provided via UI 900-1400) to identify one or more conditions that, when met, indicate that a state transition is reasonable. Based on this indication, the DRCC deployment management application may transition a region from one state to another based on the tracking of the region state and the indication that the transition is reasonable. In some embodiments, a graphical element (e.g., graphical element 910) representing the current state of a region (e.g., pre-foreground) can be colored or otherwise visually distinguished from graphical elements corresponding to other possible region states. Coloring (or other visual distinction) can provide a user with an indication of the current state of a region at a glance.

[0133] As depicted, region 912 may include any suitable number of tabs corresponding to respective sections of UI 900. Region 914 may present any suitable data and / or UI elements corresponding to the selections provided in region 912. For example, selecting tab 916 corresponding to "Minimum Investment per Year" may present the data and / or UI elements depicted in region 914. The number of entries presented in region 918 may be fixed and determined based at least in part on one or more attribute values ​​of the region data. For example, four entries may be presented in region 918 based at least in part on an attribute value associated with an attribute of the years of deployment data (e.g., "4"), where the attribute of the years of deployment data is associated with a region, as depicted at 920. The data provided in region 914 may be updated to correspond to the selections made in region 912. By default, tab 916 ("Minimum Investment per Year") may be selected and multiple entries (e.g., 4) may be presented via region 918. Attribute values ​​for some of the attributes presented within area 918 (eg, Years, 1, 2, 3, and 4) may be pre-populated and immutable regardless of the selection made using UI element 922 .

[0134] To edit the data attributes of the entries in area 918, the user may select UI element 924 and then select UI element 922 to make the attribute value of the row corresponding to UI element 924 editable. In the example provided, the attribute value corresponding to the minimum investment per year may be editable, while the attribute value "1" corresponding to the annual value is not editable. The user may provide a value (e.g., 1,000,000) at 926 and select 928 to save the changes.

[0135] In some embodiments, the user can select UI element 930, from which any suitable filter, sorting parameter and / or function can be selected. The selected function (e.g., the sum of the values ​​of the columns associated with the attribute "minimum investment per year") can be selected, as depicted by UI element 932. The selection of this function can make it possible to present additional UI elements (e.g., UI element 934) (e.g., as depicted, adjacent to region 916). UI element 934 can indicate the function to be applied (e.g., sum). When the user enters the input corresponding to the attribute value of the attribute to which the function is to be applied in region 938, value 940 can be updated to reflect the result value of the attribute value applied to region 938 by the function. If desired, UI element 942 can be selected to remove UI element 934.

[0136] Selecting tab 944 may navigate the user to Figure 7 UI 700 is similar to the UI, but this UI can be configured to present customer questions for the region instead of combining Figure 7 The deployment-specific issues discussed. Selecting tab 946 can navigate the user to Fig.10 UI 1000.

[0137] The data presented in user interface 900 may be formatted in different ways and may include additional data or may be absent. Fig. 9 Some of the data shown in .

[0138] Fig.10 is a block diagram illustrating exemplary user interface (UI) elements of a region detail page (eg, user interface (UI) 1000) of a DRCC deployment management application according to at least one embodiment. The UI 1000 may be Fig. 9 Example of UI 900.

[0139] Area 1002 can be connected with Fig. 9912 of the UI 900, and as depicted may include any suitable number of tabs corresponding to the respective sections of the UI 900. Area 1004 may present any suitable number of options corresponding to the selections provided in area 1002. For example, selecting tab 1006 corresponding to "Upload Documents" may cause options corresponding to "Order Documents," "Regional Assessment Questionnaire," and "Statement of Work" to be presented within 1004. The data provided within area 1008 may be updated to correspond to the selections made within areas 1002 and / or 1004. By default, upon selecting tab 1006, option 1010 corresponding to the "Order Documents" option may be selected. Selecting other options within area 1004 may cause data and / or UI elements corresponding to each option to be presented, thereby replacing any previous data and / or UI elements corresponding to different options. A user may select UI element 1014 to bring up additional UI elements (e.g., pop-up windows and / or buttons, text fields, edit boxes, etc.), which the user may utilize to initiate the upload of one or more documents. In some embodiments, each option in region 1004 may be associated with a predefined storage location, naming convention, etc., or documents uploaded with UI element 1014 for a given option (e.g., option 1010) may be associated with each other and / or distinguishable from documents uploaded in association with a different option. As a non-limiting example, documents uploaded in association with option 1010 (e.g., an "order documents" option) may be stored in a different location than documents uploaded in association with option 1016 (e.g., a "regional assessment questionnaire" option). When option 1010 is selected, documents uploaded in association with option 1010 may be displayed in region 1018, and when option 1016 is selected, documents uploaded in association with option 1016 may be presented in region 1018.

[0140] The data presented in user interface 1000 may be formatted in different ways and may include additional data or may be absent. Fig.10 Some of the data shown in .

[0141] Fig.11 1 is a block diagram illustrating exemplary user interface (UI) elements corresponding to an exceptions tab of a region detail page (eg, user interface (UI) 1100) according to at least one embodiment. UI 1100 may be Fig. 9 In some embodiments, when a user accesses a Figure 8 After submitting the deployment request, area 1102 (with Fig. 9 At least some of the options provided in the area 912 of the example (corresponding to the area 912 of the example) may not be available / presented until the deployment has transitioned to a particular state (e.g., Figure 8In some embodiments, the system may be configured to Figure 6-Figure 10 Any suitable combination of the deployment data and / or regional data presented and / or discussed performs one or more verification processes and / or operations. In some embodiments, submitting a deployment request can cause the system to transmit an electronic communication to a PM owner (e.g., Bob Vance). After the PM owner reviews and approves the deployment request (which can be provided via a user interface hosted by the DRCC deployment management application), the deployment status associated with this deployment can transition to a "qualified" state. The DRCC deployment management application can track deployment data (including any suitable updates to the deployment data provided via UI 400-1900) to identify one or more conditions that, when met, indicate that a state transition is reasonable. Based on this indication, the DRCC deployment management application can transition the deployment from one state to another based on the indication that the transition is reasonable.

[0142] Tabs 1104 and 1106 may be presented after the deployment has transitioned to a particular state (e.g., a "qualified" state). The content presented in the region may be updated based, at least in part, on the selection made in region 1102. As presented, region 1108 includes data and / or UI elements corresponding to tab 1104. UI elements 1111 and 1112 may be initially hidden from view. In some embodiments, a user may desire to request a hardware exception (e.g., a hardware request that deviates from the standard hardware configuration of the DRCC). To this end, a user may select UI element 1110. In some embodiments, this selection may update region 1108 to include row 1113, in which any suitable attribute value of an exception may be provided. Alternatively, in some embodiments, selecting UI element 1110 may cause UI element 1111 (e.g., a pop-up window overlaid on UI 1100) to be presented. UI element 1111 may include any suitable number of additional UI elements (e.g., check boxes, edit boxes, radio buttons, drop-down menus, etc.), which may provide any suitable number of attributes corresponding to the exception. UI element 1111 can be scrollable horizontally and / or vertically.After selecting UI element 1115, system can perform multiple verification processes and / or operations to verify the input provided with UI element 1111 (e.g., verify whether the input provided in UI element 1111 matches a set of allowed attribute values, verify whether each attribute in a set of required attributes provides attribute values, etc.). In some embodiments, if at least one verification process / operation fails, the presentation of UI element 1111 can continue. Alternatively, if all verification processes / operations pass, the entry corresponding to row 1113 can be presented in region 1108. In some embodiments, user can select UI element 1116 to view the attribute value in another UI element similar to UI element 1111 (e.g., pop-up title "View Exceptions", not depicted).

[0143] Exceptions can be associated with costs. In some embodiments, a user can select UI element 1118 (or the corresponding UI element in UI element 1111) to present UI element 1120. UI element 1120 can be a pop-up window, or the data and / or UI element of UI element 1120 can be presented in area 1108. In some embodiments, the corresponding cost associated with one or more exceptions can be determined from UI element 1120. UI element 1120 can include any suitable number of entries (for example, one entry per year in the number of years associated with deployment). Each entry can include the value of the total cost of all exceptions corresponding to the entry to be quantified. As an example, $1,000,000 is presented at 1122, and can be used to indicate the total cost of all exceptions corresponding to the first year of this deployment (for example, the deployment associated with deployment ID 1621). Any suitable number and type of exceptions can be defined in UI 1100. Regardless of whether the annual / total cost is currently displayed, each modification / addition will cause the associated annual total cost and / or total cost to be updated.

[0144] The data presented in user interface 1100 may be formatted in different ways and may include additional data or may be absent. Fig.11 Some of the data shown in .

[0145] Fig.12 is a block diagram illustrating exemplary user interface (UI) elements corresponding to a capacity forecast tab of a region detail page (eg, user interface (UI) 1200) of a DRCC deployment management application according to at least one embodiment. The UI 1200 may be Fig. 9 In some embodiments, UI 1200 may be responsive to receiving a request to tab 1202 (e.g., Fig.11 In some embodiments, the user may select UI element 1204 to add a capacity forecast. In response to this selection, the system may be configured to generate a capacity forecast based at least in part on any suitable responses provided for any suitable number / combination of questions presented via tab 1206. In some embodiments, selecting UI element 1204 may present additional UI elements (e.g., pop-up windows) to the user through which parameters for generating the capacity forecast may be identified. In some embodiments, selecting UI element 1204 alone generates a capacity forecast according to a predefined set of parameters. The capacity forecast may be associated with a capacity forecast ID (e.g., presented in UI element 1212).

[0146] Once generated, the capacity forecast may be accessed via row 1208 of region 1210. For example, the capacity forecast may be presented in response to receiving an indication to select UI element 1210. Selecting UI 1212 may navigate the user to Fig.13 UI1300.

[0147] The data presented in user interface 1200 may be formatted in different ways and may include additional data or may be absent. Fig.12 Some of the data shown in .

[0148] Fig.13 is a block diagram illustrating an exemplary user interface (UI) 1300 (eg, a capacity forecast details page) of a DRCC deployment management application according to at least one embodiment. The UI 1300 may be responsive to receiving a selected Fig.12 1300 may include an area 1302 having a plurality of options (e.g., options corresponding to the number of years specified at 1304 in the deployment data corresponding to this capacity forecast). Each option may correspond to a specific year in the number of years presented at 1304. As depicted, when option 1308 is selected by default, area 1306 presents capacity forecast details for year 1. Selecting any option within area 1302 may transition area 1306 to present capacity forecast details corresponding to the selected option. The capacity forecast details may include any suitable number of entries for the capacity forecast. The capacity forecast may be based at least in part on a response provided via UI 700 and / or based on any suitable data provided via UI 4-12 indicating one or more entries corresponding to components (e.g., hardware, software, or networking components) required (or at least predicted to be required) for the deployment. In some embodiments, row 1308 may indicate any suitable attributes of the capacity forecast, including, but not limited to, a SKU number (e.g., any suitable identifier that uniquely identifies a hardware, networking, or software component), a required quantity, a metric associated with the component, a commercial list price (or any suitable cost associated with the component), a created at and / or creator identifier (e.g., indicating the entity that created the data corresponding to each entry).

[0149] Region 1306 may also include entry 1310, which may correspond to a function (e.g., a sum of attribute values ​​corresponding to the attribute "commercial listing annual price"), as depicted at 1312. The sum function may be selected and applied by default, or may be selected via UI element 1314. The sum of attribute values ​​for the "commercial listing annual price" attribute may be provided at 1316. The user may reposition the entries within region 1306 and / or edit as desired until the capacity forecast is accurate / as desired.

[0150] In some embodiments, UI element 1318 can be used to generate configuration and profit analysis. In some embodiments, UI element 1318 can be disabled by default and only appears when the total for a given year (e.g., presented at 1316) equals or exceeds the total for the given year. Fig. 9 1314. As long as the sum presented at 1316 is less than the minimum investment identified for Year 1, information text 1320 may be presented. If and when the sum is equal to or greater than the minimum investment for that year, information text 1320 may be removed from UI 1300 and UI element 1318 may be enabled. When disabled, selection of UI element 1318 may result in no action being taken. When enabled, selection of UI element 1318 may cause the system to generate a configuration and profit analysis according to a predefined set of protocols. Once generated, the system may generate a link and present it at 1214 via UI 1200. Selection of the UI element at 1214 may navigate the user to Fig.14 UI 1400.

[0151] The data presented in user interface 1300 may be formatted in different ways and may include additional data or may be absent. Fig.13 Some of the data shown in .

[0152] Fig.14 is a block diagram illustrating an exemplary user interface (UI) 1400 (eg, configuration and profit analysis page) of a DRCC deployment management application according to at least one embodiment. The UI 1400 may be responsive to receiving a selected Fig.12 1214. UI 1400 may include region 1402 having a plurality of tabs. As depicted, region 1402 presents a configuration tab 1404, a configuration totals tab 1406, an annual profit tab 1408, and a total profit tab 1410. The data and UI elements presented in region 1412 may correspond to the selected tab. By default, configuration tab 1404 may be selected, and region 1412 may present Fig.14 The data and UI elements depicted in .

[0153] When the configuration tab 1404 is selected, area 1412 may include configuration data. The configuration data may include, but is not limited to, configuration version, hardware type, base footprint (e.g., default number of components included in a predefined base DRCC footprint), startup footprint (e.g., based on the user Figure 7 The UI 700 specifies the workload, the number of components required for the currently configured DRCC / region, and the power required in kilowatts by rack type.

[0154] Region 1412 may include UI element 1414 that, when selected, provides an expanded view of a plurality of entries corresponding to the number of racks of different types to be provided in the DRCC / region. When the expanded view is provided, the entries may appear in region 1416. When provided in a collapsed view, the entries presented within region 1416 may be hidden and only row 1418 may be visible. As depicted, the entries may be grouped (e.g., by year, category, etc.). UI element 1420 may similarly be selected to expand region 1412 to include a corresponding region in which entries corresponding to year 2 may be presented.

[0155] Although not depicted, when the configuration summary tab 1406 is selected, the area 1412 may include configuration summary data. The configuration summary data may include, but is not limited to, the configuration version, the number of years, the total number of base racks (e.g., the total number of racks in the base footprint from the collective entry of the configuration data), the total number of enabled racks (e.g., the total number of racks in the enabled footprint from the collective entry of the configuration data), the square feet (e.g., the square feet required for the rack plus 30% additional square feet), the amount of square meters (e.g., the square meters of space required for the rack plus 30% additional square meters), and the total power in kilowatts (e.g., the total number of powers from the collective entry of the configuration data).

[0156] Although not depicted, when the annual profit tab 1408 is selected, area 1412 may include annual profit data. The annual profit data may include, but is not limited to, configuration version, number of years, minimum investment per year (e.g., Fig. 9 The minimum number of inputs, annual profits (e.g., -23.06, 25.1, etc.), annual exception costs (e.g., Fig.11 The total cost for each year is the sum of all exceptional costs in each year, the profit percentage excluding write-off amounts, and the total cost for the year excluding write-off amounts.

[0157] Although not depicted, area 1412 may include total profit data when total profit tab 1410 is selected. Total profit data may include, but is not limited to, configuration version, total cost for DRCC / region (e.g., $8,160,334), total exception cost (e.g., total amount of all annual exception costs), total revenue (e.g., 11,000,000), total profit (e.g., a percentage such as 25.80), total profit percentage excluding write-off amounts (e.g., 39), and total cost excluding write-off amounts (e.g., $6,709,214).

[0158] The data presented in user interface 1400 may be formatted in different ways and may include additional data or may be absent. Fig.14Some of the data shown in .

[0159] Fig.15 1 is a block diagram illustrating an exemplary user interface (UI) 1500 (eg, dashboard) of a DRCC deployment management application according to at least one embodiment. The UI 1500 may be responsive to receiving a selection of a UI element 1502 ( Figure 4 UI 1500 may include area 1504. Area 1504 may present any suitable number of graphs, bar charts, etc. corresponding to one or more deployments (e.g., all deployments, a subset of deployments, etc.). As depicted, UI 1500 includes pie chart 1506. Pie chart 1506 indicates corresponding portions of the pie that are attributable to deployments of a particular condition. Pie chart 1506 indicates that 10% of submitted deployments are in a "paused" state, 15% are in a "foreground" state, 5% are in a "rejected" state, 29% are in a "qualified" state, 9% are in an "approved" state, 22% are in a "pre-foreground" state, and 10% are in a "provisioned" state.

[0160] Any suitable deployment data may be summarized and / or depicted using one or more graphs, charts, counts, or any suitable visual data representation.Area 1504 may be scrollable horizontally and / or vertically.

[0161] The data presented in user interface 1500 may be formatted in different ways and may include additional data or may be absent. Fig.15 Some of the data shown in .

[0162] Fig.16 1600 (eg, a calendar page) of a DRCC deployment management application according to at least one embodiment. The UI 1600 may be responsive to receiving a selection of a UI element 1602 ( Figure 4 The UI 1600 may include an area 1604 that may be configured to present a calendar (e.g., an annual, monthly, daily calendar). In some embodiments, options 1606 and 1608 are provided to navigate forward and backward within the calendar (e.g., by month). Area 1604 may be updated to present data corresponding to the navigation actions provided via options 1606 and 1608. When selected, option 1610 may cause the month corresponding to the current data to be displayed, and highlight or otherwise visually distinguish the current date.

[0163] UI 1600 may include option 1612. Receiving a selection indicating that option 1612 has been selected may cause a list of months to be presented. Selecting a month from this list may cause region 1604 to be updated to present data corresponding to the selected month. Selecting option 1614 may cause region 1604 to be updated to present a list of events (e.g., events 1616) in order (e.g., chronological order) within region 1604, thereby replacing grid 1618 in the process. Selecting option 1612 again may replace the list with grid 1618 within region 1604.

[0164] The data presented in user interface 1600 may be formatted in different ways and may include additional data or may be absent. Fig.16 Some of the data shown in .

[0165] Fig.17 1 is a block diagram illustrating an exemplary user interface 1700 (e.g., a deployment tracker page) of a DRCC deployment management application according to at least one embodiment. UI 1700 may be presented in response to receiving an indication to select UI element 1702. To select UI element 1702, a user may select UI element 1704 (e.g., Figure 4 1704). In some embodiments, selecting UI element 1704 may cause an expanded view of multiple additional UI elements (e.g., UI element 1706) to be presented. Upon selecting UI 1702 of UI element 1706, data corresponding to a deployment tracker page may be presented.

[0166] UI 1700 may include regions 1708 and 1710. Region 1708 may be configured to present any suitable data, such as executive summary data. An entry corresponding to region 1708 may be added by selection of UI element 1716. Empty entries may be added to region 1708, and attribute values ​​(e.g., corresponding to attributes "customer" and "update") may be added based on selecting a corresponding region within the newly added entry. Previously provided entries may be edited based at least in part on selecting UI element 1717 and then selecting UI element 1718 and providing modified attribute values ​​within the row (or rows) being edited. Region 1708 may be expanded as entries are added. Region 1708 may be expanded to any suitable size to encapsulate any suitable number of entries.

[0167] Region 1710 may include any suitable deployment data. By way of example and as depicted, region 1710 may include region 1712 in which any suitable number of visual representations (e.g., graphs, charts, pie charts, bar charts, etc.) may be displayed. By way of example, visual representation 1713 may be used to present data indicating the percentage of deployments that are currently in an “approved” state by geographic region. Visual representation 1715 may present data indicating the percentage of deployments that are currently in a “qualified” state by geographic region. Visual representation 1717 may present data indicating the percentage of deployments that are currently in a “qualification in progress” state by geographic region. Visual representation 1719 may present data indicating the total number of deployments by geographic region.

[0168] Region 1714 may include any suitable number of entries corresponding to any suitable number of regions. For example, the presented data corresponding to geographic region "REG23" may indicate that there are two deployments in an "approved" state, five deployments in a "qualified" state, and two deployments in a "qualification in progress" state. The count values ​​provided in region 1714 may be provided in relation to any suitable state (e.g., pre-prospect, prospect, qualification in progress, qualified, P1 approved, P2 approved, deployment provisioned, etc.).

[0169] The data presented in user interface 1700 may be formatted in different ways and may include additional data or may be absent. Fig.17 Selecting UI element 1720 may navigate the user to Fig.18 UI 1800. Selecting UI element 1722 can navigate the user to Fig.19 UI 1900.

[0170] Fig.18 1 is a block diagram illustrating an exemplary user interface 1800 (eg, a hardware prediction page) of a DRCC deployment management application according to at least one embodiment. The UI 1800 may be responsive to receiving a UI element 1802 (eg, Fig.171720 example) has been selected and is presented. UI 1800 can be configured to present hardware forecast data within area 1804. Column 1806 can present customer data (e.g., customer name, country, region, etc.). Column 1808 can present deployment data (e.g., status, configuration version, go-live date, etc.). Columns can present data indicating the number of DRCCs used for the customer. Each of columns 1812-1824 can present the corresponding number of racks for the hardware components indicated in row 1826. Columns 1812-1824 within row 1828 can correspond to hardware parameters such as startup footprint (the number of racks required to start the footprint). Although not depicted, row 1828 can include other hardware parameters, such as base footprint (e.g., a number indicating the number of corresponding hardware components included in the base footprint of the DRCC). Row 1830 may include attribute values ​​for each of columns 1806 - 1824 for a customer (eg, customer A), while row 1832 may include attribute values ​​for each of columns 1806 - 1824 for a different customer (eg, customer C).

[0171] can be based on known customers (e.g., Figure 5 Any suitable number of rows and columns may be used in region 1804, depending on the number of clients provided by UI 500 and / or the number of hardware components required for startup. In some embodiments, region 1804 may be scrollable horizontally and / or vertically. Although not depicted, it may be possible to scroll horizontally and / or vertically. Fig.18 as well as Figure 4-20 Use any suitable combination of Figure 5 UI elements 528, 530, 536 and 538 of UI elements to allow horizontal and / or vertical scrolling of the corresponding UI.

[0172] The data presented in user interface 1800 may be formatted in different ways and may include additional data or may be absent. Fig.18 Some of the data shown in .

[0173] Fig.19 1 is a block diagram illustrating an exemplary user interface 1900 (e.g., a hardware and networking information page) of a DRCC deployment management application according to at least one embodiment. UI 1900 may be presented based at least in part on selecting UI element 1902. UI element 1904 may be selected to present UI element 1906. UI 1900 may include area 1908 that may present hardware rack data or network rack data corresponding to tab 1910 or 1912, depending on which tab is selected. Fig.19, when tab 1910 is selected, region 1908 may present hardware rack data. The hardware rack data may include, but is not limited to, configuration version, model series description, general resource type, rack type, standard cost, etc. Each entry within region 1908 may be associated with a cost, as depicted at column 1914. In some embodiments, the total cost of the hardware rack may be depicted at 1916. When tab 1912 is selected, similar data may be presented regarding one or more network racks.

[0174] The data presented in user interface 1900 may be formatted in different ways and may include additional data or may be absent. Fig.19 Selecting UI element 1920 may navigate the user to the exception approval mapping page, where the Fig. 20 UI Elements 2008.

[0175] Fig. 20 Included are diagrams for illustrating a DRCC deployment management application (eg, Figure 1 DRCC Lifecycle Management Application 144 or Figure 2 228) of the user interface (e.g., exception approval mapping page). The exception approval mapping page may generally look similar to Fig.19 The Rack Cost page is similar to the Rack Cost page, but can be configured to present different data.

[0176] For example, by default, the exception approval mapping page may present UI element 2008 by default. UI element 2008 may correspond to a "products" tab. UI element 2008 may provide any suitable UI element for searching, editing, saving, and adding entries corresponding to products within area 2010. In some embodiments, UI element 212 may be selected to add an entry to area 2010, and may be displayed in the same manner as above. Figure 4-Figure 19 Edit the entry in a similar manner as described in to update the attribute values ​​of the entry.

[0177] UI element 2006 may correspond to a “Functions” tab. UI element 2006 may provide any suitable UI element for searching, editing, saving, and adding entries corresponding to functions within region 2014. In some embodiments, UI element 2016 may be selected to add entries to region 2014, and may be displayed in the same manner as described above. Figure 4-Figure 19 Edit the entry in a similar manner as described in to update the attribute values ​​of the entry.

[0178] UI element 2002 may correspond to an "Exceptions" tab. UI element 2002 may provide any suitable UI element for searching, editing, saving, and adding entries corresponding to exceptions within region 2014. In some embodiments, UI element 2018 may be selected to add an entry to region 2020, and may be displayed in the same manner as described above. Figure 4-Figure 19 The UI element 2002 may include an area 2024 in which multiple entries corresponding to the exception subcategory may be searched, edited, added, saved, etc. In some embodiments, the UI element 2022 may be selected to add an entry to the area 2024, and the entry may be added in the same manner as described above. Figure 4-Figure 19 Edit the entry in a similar manner as described in to update the attribute values ​​of the entry.

[0179] UI element 2002 may correspond to a "mapping" tab. UI element 2002 may provide any suitable UI element for searching, editing, adding, saving mappings between any suitable combination of products (e.g., specified with UI element 2008), functions (e.g., specified with UI element 2006), exceptions (e.g., specified with UI element 2002), and / or subcategories (e.g., specified with UI element 2002). In some embodiments, UI element 2026 may be selected to add an entry to area 2028. Once added, a value corresponding to any suitable combination of products, functions, categories, and / or subcategories may be selected from the values ​​provided via UI elements 2008, 2006, and 2002.

[0180] In some embodiments, the mapping of regions 2028 can be used to identify one or more entities that must approve and / or review deployment data and / or region data corresponding to the DRCC (e.g., to determine whether to transition a deployment and / or region from one state to another).

[0181] The data presented in UI elements 2002-2008 may be formatted in different ways and may include additional data or may be absent. Fig. 20 Some of the data shown in .

[0182] Fig.21 2 is a block diagram illustrating an exemplary method 2100 for managing the life cycle of a DRCC according to at least one embodiment. The method 2100 may be respectively Figure 1 and Figure 2 The operations discussed in connection with method 2100 may be performed in any suitable order. Method 2100 may include: Fig.21 The operations discussed here are more or less operations.

[0183] Method 2100 may begin at 2102, where deployment data corresponding to a dedicated cloud may be obtained via a plurality of user interfaces (e.g., any suitable combination of UIs 400-1900) (e.g., in Figure 6 In some embodiments, a dedicated cloud ( Figure 1 In some embodiments, the plurality of cloud infrastructure components may be hosted by one or more computing devices located at a third-party location. For example, the third-party location may be associated with a third-party entity (e.g., a DRCC owner) that is different from the cloud service provider (e.g., OCI).

[0184] At 2104, deployment data may be tracked (e.g., by a DRCC deployment management application) based at least in part on input provided via a plurality of user interfaces. In some embodiments, at least one of the plurality of user interfaces is configured to obtain workload data (e.g., via Figure 7 In some embodiments, the workload data may be obtained by viewing a workload tab of region 714 of the dedicated regional cloud. In some embodiments, the workload data identifies one or more workloads to be performed by a plurality of cloud infrastructure components of the dedicated regional cloud. In some embodiments, one or more hardware components may be identified from a plurality of available hardware components based at least in part on the workload data.

[0185] At 2106, a deployment state associated with deploying a dedicated cloud may be transitioned from a first state to a second state based at least in part on tracking. In some embodiments, the regional data may be validated based at least in part on performing one or more validation operations on the regional data provided via one or more user interfaces. In some embodiments, the first state (e.g., a "foreground" state) and the second state (e.g., a "qualification in progress" state) are each one of a plurality of states in a predefined order associated with the deployment of the dedicated cloud. The transition may be based at least in part on identifying that the validation operation has been successfully performed. In some embodiments, the regional data may alternatively or additionally be tracked, and the regional state associated with provisioning hardware for the dedicated cloud may be transitioned additionally or alternatively. In some embodiments, the regional state may be transitioned from a third state to a fourth state based at least in part on tracking. The third state and the fourth state may each be one of a second plurality of states in a second predefined order associated with provisioning regional cloud hardware.

[0186] At 2108, one or more user interfaces in the plurality of user interfaces (e.g., Figure 7 Area 704, Fig. 9Information indicating a transition from a first state to a second state of a deployment state may be presented at least in part based on tracking a plurality of deployment states corresponding to respective deployments (e.g., in a region 902 of FIG. 1 ). Figure 7 In some embodiments, a separate visual representation of the state of a region (e.g., a visual representation presented in region 704) may be generated and presented (e.g., via UI 900 in region 904). Fig. 9 In some embodiments, one or more user interfaces (e.g., Fig.18 The UI 1800) may additionally or alternatively present hardware data specifying one or more hardware components.

[0187] Fig. 22 Illustrated is a high-level structure of an exemplary 12-rack chassis footprint on which an IaaS / DRCC architecture (e.g., Fig. 22 IaaS / DRCC architecture). Each of the 12 racks can be configured to hold 18 servers. 6 servers can be used to provide key management services and configured according to a predefined X9 configuration. The 6 servers can be spread across three racks (e.g., racks 1-3) for fault tolerance. 18 servers can be used to provide object storage resources according to an X9 bit storage configuration. The 18 servers can be spread across three racks (e.g., racks 1-3) for fault tolerance, as shown in FIG. Fig. 22, and can be used to provide 1818TiB of capacity. 4 servers on four racks (e.g., racks 1-4) can be used to provide substrate storage according to an X9-bit storage configuration, and can be used to provide 288 virtual CPUs and 864TiB of capacity. 45 servers spread across four racks (e.g., racks 1-4) can be used to provide substrate computing resources using 1U servers according to the E4 platform. These 45 servers can be used to provide 11520 virtual CPUs and 1080TiB of non-volatile memory fast (NVMe) capacity. 4 servers in a single rack (e.g., rack 4) can be used to provide substrate computing resources using 1U servers according to the E3 platform. 8 servers in a single rack (e.g., rack 4) can be used to provide additional substrate computing resources according to the El Paso, E4 platform. 16 servers spread across four racks (e.g., racks 1-4) can be used to provide block storage resources according to the E4 platform. These servers can be used to provide 1280TiB of capacity. 36 servers spread across 3 racks (e.g., racks 5-7) can be used to provide a customer enclave based on an E4 conventional platform (e.g., using standard AMD processors) to provide a computing capacity of 4608 OCPUs. 18 servers spread across 3 racks (e.g., racks 5-7) can be used to provide a customer enclave based on an E4 dense platform (e.g., using E4 AMD dense processors) to provide a computing capacity of 2304 OCPUs. 18 servers of a single rack (e.g., rack 8) can be used to host Exadata X9M database (DB) nodes (e.g., 18 nodes). Another 18 servers of another rack (e.g., rack 9) can be used to host Exadata X9M high capacity (HC) nodes (e.g., 15 HC nodes). Racks 10 and 11 and the corresponding 36 servers can be used for network core resources (e.g., providing 32-128 standard racks).

[0188] As depicted, the service enclave 2202 may be implemented using the servers of racks 1-4, the customer service enclave 2204 may be implemented using the servers of racks 5-7, the Exadata resources may be implemented using the servers of racks 8 and 9, and the networking resources may be implemented using the servers of racks 10-12.

[0189] Fig.2323 is a block diagram 2300 illustrating an example schema of an IaaS architecture (e.g., a DRCC architecture) according to at least one embodiment. A service operator 2302 can be communicatively coupled to a secure host lease 2304, which can include a virtual cloud network (VCN) 2306 and a secure host subnet 2308. In some examples, the service operator 2302 can use one or more client computing devices, which can be portable handheld devices (e.g., Cellular phone, computing tablets, personal digital assistants (PDAs), or wearable devices (e.g., Google head mounted display), running software such as Microsoft Windows and / or various mobile operating systems such as iOS, Windows Phone, Android, BlackBerry 8, PalmOS, etc., and enable Internet, email, short message service (SMS), or other communication protocols. Alternatively, the client computing device may be a general-purpose personal computer, including, for example, running various versions of Microsoft Apple The client computing device can be a personal computer and / or laptop computer running a variety of commercial Alternatively, or in addition, the client computing device may be any other electronic device, such as a thin client computer, an Internet-enabled gaming system (e.g., with or without a PC or other computer). A Microsoft Xbox gaming console with a gesture input device) and / or a personal messaging device that can communicate over a network that has access to VCN 2306 and / or the Internet.

[0190] VCN 2306 may include a local peer gateway (LPG) 2310, which may be communicatively coupled to a secure shell (SSH) VCN 2312 via LPG 2310 contained in SSH VCN 2312. SSH VCN 2312 may include an SSH subnet 2314, and SSH VCN 2312 may be communicatively coupled to control plane VCN 2316 via LPG 2310 contained in control plane VCN 2316. Also, SSH VCN 2312 may be communicatively coupled to data plane VCN 2318 via LPG 2310. Control plane VCN 2316 and data plane VCN 2318 may be contained in a service lease 2319, which may be owned and / or operated by an IaaS provider.

[0191] The data plane VCN 2318 may include a data plane application layer 2346, a data plane DMZ layer 2348, and a data plane data layer 2350. The data plane DMZ layer 2348 may include (one or more) LB subnets 2322, which may be communicatively coupled to (one or more) application subnets 2326 of the data plane application layer 2346 and a gateway 2334 of the data plane VCN 2318. The gateway 2334 may be an example of an Internet gateway, a service gateway, a NAT gateway, etc. The data plane data layer 2350 may also include (one or more) DB subnets 2330, which may be communicatively coupled to (one or more) application subnets 2326 of the data plane application layer 2346.

[0192] The gateway 2334 of the data plane VCN 2318 can be communicatively coupled to a proxy computer 2352 (e.g., a Splat proxy), which can be communicatively coupled to the public Internet 2354. The public Internet 2354 can be communicatively coupled to the gateway 2334 of the data plane VCN 2318. The gateway 2336 of the data plane VCN 2318 (e.g., a service gateway of the gateway 2336) can be communicatively coupled to the cloud service(s) 2356. In some embodiments, the cloud service(s) 2356 can operate within a DRCC on hardware provided by a customer. The cloud service(s) 2356 can include any suitable service, such as an ADW 2374 ( Figure 1 ADW 126 example), service 2357 ( Figure 1 of one of the service(s) 118), object storage device 2372 (by Figure 1 ), telemetry and logging service 2360 ( Figure 1), but any suitable service (including Figure 1 The services discussed in the related section) can be included in (one or more) cloud services 2356. Data flow jobs (e.g., Figure 2 The spark job 214 example) can be configured to retrieve data from an object storage device (e.g., from Figure 2 The object storage device storage bucket (Horizon storage bucket) 122) pulls the collected data and transforms and / or writes the data to ADW (e.g., Figure 1 and Figure 2 ADW 126).

[0193] Service provider lease 2362 may include Horizon services 2364 ( Figure 1 and Figure 2 2364), which may be communicatively coupled to cloud service(s) 2356 via gateway 2366. As discussed above, Horizon service 2364 may be configured to perform data collection operations to obtain any suitable operational data for DRCC, such as any suitable data related to capacity management, expansion management, health and performance tracking, change management, and the like. As non-limiting examples, Horizon service 2364 may be configured to obtain capacity and usage data, such as the number of CPUs, the total and used amount of block storage devices, the total and used amount of object storage devices, the total and used amount of file storage, and the like, or Figure 4-22 In some embodiments, this may include interacting with one or more of the cloud service(s) 2356. The Horizon service 2364 may be configured to store any suitable data discussed above in the object storage 2372 (e.g., Figure 1 In a dedicated bucket (e.g., a Horizon bucket) within an object storage device bucket (horizon bucket) 122).

[0194] In some examples, a gateway 2334 (e.g., a service gateway) of a data plane VCN 2318 can make application programming interface (API) calls to cloud service(s) 2356 (e.g., using data plane API 2355) without going through public internet 2354. API calls from gateway 2334 to cloud service(s) 2356 can be one-way: gateway 2334 can make API calls to cloud service(s) 2356 (e.g., using data plane API 2355), and cloud service 2356 can send the requested data to gateway 2334. However, cloud service(s) 2356 may not initiate API calls to service gateway 2336.

[0195] In some examples, secure host lease 2304 can be directly connected to service lease 2319, while service lease 2319 can be otherwise isolated. Secure host subnet 2308 can communicate with SSH subnet 2314 through LPG 2310, which can enable two-way communication on otherwise isolated systems. Connecting secure host subnet 2308 to SSH subnet 2314 can enable secure host subnet 2308 to access other entities within service lease 2319.

[0196] In some examples, a user or customer of the system may issue a request, such as a create, read, update, or delete (CRUD) operation, over the public internet 2354 (e.g., using a user interface provided by Oracle Cloud Console 2357), which may transmit the request to proxy computer 2352. Proxy computer 2352 may transmit the request to data plane VCN 2318 via gateway 2334. The request may be received by LB subnet(s) 2322 contained in data plane DMZ layer 2348. LB subnet(s) 2322 may determine that the request is valid, and in response to this determination, LB subnet(s) 2322 may transmit the request to application subnet(s) 2326 contained in data plane application layer 2324. If the request is validated and requires a call to the internet 2354, the call to the internet 2354 may be transmitted to gateway 2334 (e.g., a NAT gateway of gateway 2334), which may make the call to the internet 2354. The memory that the request may desire to store may be stored in (one or more) DB subnets 2330 .

[0197] In some embodiments, control plane VCN 2316 and data plane VCN 2318 may be included in service lease 2319. In this case, a user or customer of the system may not own or operate either control plane VCN 2316 or data plane VCN 2318. Instead, an IaaS provider may own or operate control plane VCN 2316 and data plane VCN 2318, both of which may be included in service lease 2319. In some embodiments, the hardware implementing service lease 2319 may be owned by the customer but managed by the IaaS provider. In some embodiments, the isolation of these networks (VCNs) may enable allowing users or customers of the system to store databases privately without relying on the Internet 2354 for storage, as the Internet 2354 may not have the desired level of threat protection.

[0198] In other embodiments, the LB subnet(s) 2322 contained in the control plane VCN 2316 can be configured to receive signals from the gateway 1034. In this embodiment, the data plane VCN 1018 can be configured to be called by customers of the IaaS provider without calling the Internet 2354. Customers of the IaaS provider may desire this embodiment because the database(s) used by the customer can be controlled by the IaaS provider and can be stored on a service lease 2319 that can be isolated from the Internet 2354.

[0199] In some embodiments, the following operations may be performed. In step 1, Oracle Cloud Console 2357 sends an HTTPS request to proxy computer 2352. Proxy computer 2352 may be configured to perform authentication and / or authorization operations. In step 2, proxy computer 2352 may forward the request to (one or more) LB subnets 2322 via HTTPS. In step 3, the load balancer of (one or more) LB subnets 2322 forwards the request to one of the OCC data planes via HTTPS / mTLS. In step 4, proxy computer 2352 may perform authentication handled via mTLS with a certificate loaded from service 2357. In step 5, data from ADW 2374 is read and returned to the caller.

[0200] In some embodiments, a timer (e.g., a daily timer) may elapse to start the data flow job 2370 ( Figure 2 In step 7, the data flow job 2370 can pull data in the object storage device 2372 from the storage bucket owned and operated by the service provider associated with the service provider lease 2362. In step 8, the data flow job can process the retrieved data and store it in the ADW 2374 ( Figure 1 In step 9, the zip file with the spark job can be loaded into the object storage device 2372. The data collector controller 2376 can load the file (e.g., zip file) with the file job into the object storage device 2372. The data flow job 2370 can be configured to consume code from there.

[0201] Although not depicted, the IaaS / DRCC architecture can be hosted by multiple racks. For example, the architecture can utilize a 12 rack base footprint, or at least fewer racks than are used in a typical public cloud. In some embodiments, the cloud service(s) 2356 can be hosted on fewer racks than the cloud service(s) within a public cloud. In some embodiments, a public cloud can utilize 21 racks as service enclaves, while Fig.23The IaaS / DRCC can utilize four racks. While the public cloud can utilize 12 racks as customer enclaves, Fig.23 As another example, while a public cloud can utilize 12 racks for networking, Fig.23 The IaaS / DRCC can utilize three racks. The IaaS / DRCC architecture can maintain the separation between service enclaves, customer enclaves, and network racks like a public cloud. This can allow for the highest density of cores in the substrate network and overlay network. In some embodiments, the hardware used to host the IaaS / DRCC can be configured by the service provider and placed on-premises at the customer location.

[0202] As noted above, Infrastructure as a Service (IaaS) is a specific type of cloud computing. IaaS can be configured to provide virtualized computing resources over a public network (e.g., the Internet). In the IaaS model, a cloud computing provider can host infrastructure components (e.g., servers, storage devices, network nodes (e.g., hardware), deployment software, platform virtualization (e.g., hypervisor layer), etc.). In some cases, IaaS providers can also provide various services to accompany these infrastructure components (example services include billing software, monitoring software, logging software, load balancing software, clustering software, etc.). Therefore, since these services may be policy-driven, IaaS users may be able to implement policies to drive load balancing to maintain the availability and performance of applications.

[0203] In some cases, IaaS customers can access resources and services over a wide area network (WAN) such as the Internet, and can use the cloud provider's services to install the remaining elements of the application stack. For example, a user can log in to the IaaS platform to create a virtual machine (VM), install an operating system (OS) on each VM, deploy middleware such as a database, create storage buckets for workloads and backups, and even install enterprise software into that VM. The customer can then use the provider's services to perform a variety of functions, including balancing network traffic, troubleshooting application problems, monitoring performance, managing disaster recovery, and more.

[0204] In most cases, the cloud computing model will require the involvement of a cloud provider. A cloud provider may, but need not, specialize in providing (e.g., provisioning, renting, selling) third-party IaaS services. An entity may also choose to deploy a private cloud, thereby becoming its own infrastructure service provider.

[0205] In some examples, IaaS deployment is the process of placing a new application or a new version of an application onto a prepared application server, etc. It may also include the process of preparing the server (e.g., installing libraries, daemons, etc.). This is typically managed by the cloud provider, below the hypervisor layer (e.g., servers, storage, network hardware, and virtualization). Thus, the customer may be responsible for handling (OS), middleware, and / or application deployment (e.g., on a self-service virtual machine (e.g., that can be started on demand), etc.).

[0206] In some examples, IaaS provisioning can refer to obtaining computers or virtual hosts for use, and even installing required libraries or services on them. In most cases, deployment does not include provisioning, and provisioning may need to be performed first.

[0207] In some cases, there are two different challenges with IaaS provisioning. First, there is the initial challenge of provisioning the initial set of infrastructure before anything is running. Second, once everything has been provisioned, there is the challenge of evolving the existing infrastructure (e.g., adding new services, changing services, removing services, etc.). In some cases, both of these challenges can be addressed by enabling configuration that defines the infrastructure in a declarative manner. In other words, the infrastructure (e.g., which components are required and how they interact) can be defined by one or more configuration files. Therefore, the overall topology of the infrastructure (e.g., which resources depend on which resources, and how they work together) can be described in a declarative manner. In some cases, once the topology is defined, workflows can be generated to create and / or manage the different components described in the configuration files.

[0208] In some examples, the infrastructure can have many interconnected elements. For example, there can be one or more virtual private clouds (VPCs) (e.g., a potential on-demand pool of configurable and / or shared computing resources), also referred to as a core network. In some examples, there can also be one or more inbound / outbound traffic group rules that are provided to define how inbound and / or outbound traffic for the network will be set up, as well as one or more virtual machines (VMs). Other infrastructure elements such as load balancers, databases, etc. can also be provided. The infrastructure can evolve gradually as more and more infrastructure elements are desired and / or added.

[0209] In some cases, continuous deployment techniques can be employed to enable deployment of infrastructure code across various virtual computing environments. In addition, the described techniques can enable infrastructure management within these environments. In some examples, a service team can write code that is expected to be deployed to one or more but typically many different production environments (e.g., across various different geographic locations, sometimes across the world). However, in some examples, the infrastructure on which the code will be deployed must first be set up. In some cases, provisioning can be done manually, resources can be provisioned using a provisioning tool, and / or code can be deployed using a deployment tool once the infrastructure is provisioned.

[0210] In some embodiments, Figure 1 The OCI 120 (including the DRCC Lifecycle Management Application 144) is based on Figure 24-27 One of the modes provided.

[0211] Fig.24 2400 is a block diagram illustrating an example schema of an IaaS architecture according to at least one embodiment. A service operator 2402 can be communicatively coupled to a secure host lease 2404, which can include a virtual cloud network (VCN) 2406 and a secure host subnet 2408. In some examples, the service operator 2402 can use one or more client computing devices, which can be portable handheld devices (e.g., Cellular phone, computing tablets, personal digital assistants (PDAs), or wearable devices (e.g., Google head mounted display), running software such as Microsoft Windows and / or various mobile operating systems such as iOS, Windows Phone, Android, BlackBerry 8, PalmOS, etc., and enable Internet, email, short message service (SMS), or other communication protocols. Alternatively, the client computing device may be a general-purpose personal computer, including, for example, running various versions of Microsoft Apple The client computing device can be a personal computer and / or laptop computer running a variety of commercial Alternatively, or in addition, the client computing device may be any other electronic device, such as a thin client computer, an Internet-enabled gaming system (e.g., with or without a PC or other computer). A Microsoft Xbox gaming console with a gesture input device) and / or a personal messaging device that can communicate over a network that has access to VCN 2406 and / or the Internet.

[0212] VCN 2406 may include a local peer gateway (LPG) 2410, which may be communicatively coupled to a secure shell (SSH) VCN 2412 via LPG 2410 contained in SSH VCN 2412. SSH VCN 2412 may include an SSH subnet 2414, and SSH VCN 2412 may be communicatively coupled to control plane VCN 2416 via LPG 2410 contained in control plane VCN 2416. Also, SSH VCN 2412 may be communicatively coupled to data plane VCN 2418 via LPG 2410. Control plane VCN 2416 and data plane VCN 2418 may be contained in a service lease 2419, which may be owned and / or operated by an IaaS provider.

[0213] The control plane VCN 2416 may include a control plane demilitarized zone (DMZ) layer 2420 that acts as a perimeter network (e.g., a portion of a corporate network between a corporate intranet and an external network). DMZ-based servers may have limited liability and help control vulnerabilities. In addition, the DMZ layer 2420 may include one or more load balancer (LB) subnets 2422, a control plane application layer 2424 that may include (one or more) application subnets 2426, and a control plane data layer 2428 that may include (one or more) database (DB) subnets 2430 (e.g., (one or more) front-end DB subnets and / or (one or more) back-end DB subnets). The LB subnet(s) 2422 included in the control plane DMZ layer 2420 may be communicatively coupled to the application subnet(s) 2426 included in the control plane application layer 2424 and the Internet gateway 2434 that may be included in the control plane VCN 2416, and the application subnet(s) 2426 may be communicatively coupled to the DB subnet(s) 2430 included in the control plane data layer 2428 and the service gateway 2436 and the network address translation (NAT) gateway 2438. The control plane VCN 2416 may include the service gateway 2436 and the NAT gateway 2438.

[0214] The control plane VCN 2416 may include a data plane mirror application layer 2440, which may include application subnet(s) 2426. The application subnet(s) 2426 included in the data plane mirror application layer 2440 may include a virtual network interface controller (VNIC) 2442 that may execute a compute instance 2444. The compute instance 2444 may communicatively couple the application subnet(s) 2426 of the data plane mirror application layer 2440 to the application subnet(s) 2426 that may be included in the data plane application layer 2446.

[0215] The data plane VCN 2418 may include a data plane application layer 2446, a data plane DMZ layer 2448, and a data plane data layer 2450. The data plane DMZ layer 2448 may include (one or more) LB subnets 2422, which may be communicatively coupled to the (one or more) application subnets 2426 of the data plane application layer 2446 and the Internet gateway 2434 of the data plane VCN 2418. The (one or more) application subnets 2426 may be communicatively coupled to the service gateway 2436 of the data plane VCN 2418 and the NAT gateway 2438 of the data plane VCN 2418. The data plane data layer 2450 may also include (one or more) DB subnets 2430, which may be communicatively coupled to the (one or more) application subnets 2426 of the data plane application layer 2446.

[0216] The Internet gateway 2434 of the control plane VCN 2416 and the data plane VCN 2418 can be communicatively coupled to the metadata management service 2452, and the metadata management service 2452 can be communicatively coupled to the public Internet 2454. The public Internet 2454 can be communicatively coupled to the NAT gateway 2438 of the control plane VCN 2416 and the data plane VCN 2418. The service gateway 2436 of the control plane VCN 2416 and the data plane VCN 2418 can be communicatively coupled to the cloud service 2456.

[0217] In some examples, a service gateway 2436 of a control plane VCN 2416 or a data plane VCN 2418 can make application programming interface (API) calls to cloud services 2456 without going through public internet 2454. API calls from service gateway 2436 to cloud services 2456 can be one-way: service gateway 2436 can make API calls to cloud services 2456, and cloud services 2456 can send requested data to service gateway 2436. However, cloud services 2456 may not initiate API calls to service gateway 2436.

[0218] In some examples, secure host lease 2404 can be directly connected to service lease 2419, which can otherwise be isolated. Secure host subnet 2408 can communicate with SSH subnet 2414 through LPG 2410, which can enable two-way communication on otherwise isolated systems. Connecting secure host subnet 2408 to SSH subnet 2414 can enable secure host subnet 2408 to access other entities within service lease 2419.

[0219] The control plane VCN 2416 may allow a user of the service lease 2419 to set up or otherwise provision desired resources. The desired resources provisioned in the control plane VCN 2416 may be deployed or otherwise used in the data plane VCN 2418. In some examples, the control plane VCN 2416 may be isolated from the data plane VCN 2418, and the data plane mirror application layer 2440 of the control plane VCN 2416 may communicate with the data plane application layer 2446 of the data plane VCN 2418 via the VNIC 2442, which may be included in the data plane mirror application layer 2440 and the data plane application layer 2446.

[0220] In some examples, a user or customer of the system may make a request, such as a create, read, update, or delete (CRUD) operation, through the public internet 2454 which may transmit the request to the metadata management service 2452. The metadata management service 2452 may transmit the request to the control plane VCN 2416 through the internet gateway 2434. The request may be received by the LB subnet(s) 2422 contained in the control plane DMZ layer 2420. The LB subnet(s) 2422 may determine that the request is valid, and in response to the determination, the LB subnet(s) 2422 may transmit the request to the application subnet(s) 2426 contained in the control plane application layer 2424. If the request is validated and a call to the public internet 2454 is required, the call to the public internet 2454 may be transmitted to the NAT gateway 2438 which may make the call to the public internet 2454. The metadata that the request may desire to be stored may be stored in the DB subnet(s) 2430.

[0221] In some examples, data plane mirror application layer 2440 may facilitate direct communication between control plane VCN 2416 and data plane VCN 2418. For example, it may be desirable to apply changes, updates, or other appropriate modifications to the configuration to the resources contained in data plane VCN 2418. Control plane VCN 2416 may communicate directly with the resources contained in data plane VCN 2418 via VNIC 2442 and may thereby perform changes, updates, or other appropriate modifications to the configuration.

[0222] In some embodiments, control plane VCN 2416 and data plane VCN 2418 may be included in service lease 2419. In this case, a user or customer of the system may not own or operate control plane VCN 2416 or data plane VCN 2418. Alternatively, an IaaS provider may own or operate control plane VCN 2416 and data plane VCN 2418, both of which may be included in service lease 2419. This embodiment may enable isolation of networks that may prevent a user or customer from interacting with the resources of other users or other customers. Furthermore, this embodiment may allow a user or customer of the system to store databases privately without relying on the public Internet 2454 for storage, which may not have the desired level of threat prevention.

[0223] In other embodiments, the LB subnet(s) 2422 contained in the control plane VCN 2416 can be configured to receive signals from the service gateway 2436. In this embodiment, the control plane VCN 2416 and the data plane VCN 2418 can be configured to be called by customers of the IaaS provider without calling the public Internet 2454. Customers of the IaaS provider may desire this embodiment because the database(s) used by the customer can be controlled by the IaaS provider and can be stored on the service lease 2419, which may be isolated from the public Internet 2454.

[0224] Fig.25 25 is a block diagram 2500 illustrating another example model of an IaaS architecture according to at least one embodiment. A service operator 2502 (e.g., Fig.24 The service operator 2402 of the present invention may be communicatively coupled to the secure host lease 2504 (e.g., Fig.24 The secure host lease 2404 may include a virtual cloud network (VCN) 2506 (e.g., Fig.24 VCN 2406) and secure host subnet 2508 (e.g., Fig.24 The VCN 2506 may include a local peer gateway (LPG) 2510 (e.g., Fig.24 ), which may be communicatively coupled to a secure shell (SSH) VCN 2512 via an LPG 2410 contained in an SSH VCN 2512 (e.g., Fig.24 SSH VCN 2512). SSH VCN 2512 may include SSH subnet 2514 (e.g., Fig.24 SSH subnet 2414 of the control plane VCN 2514), and SSH VCN 2512 can be communicatively coupled to control plane VCN 2516 via LPG 2510 contained in control plane VCN 2516 (e.g., Fig.24 The control plane VCN 2416). The control plane VCN 2516 may be included in a service lease 2519 (e.g., Fig.24 service lease 2419), and a data plane VCN 2518 (e.g., Fig.24 The data plane VCN 2418) may be contained in a customer lease 2521 which may be owned or operated by a user or customer of the system.

[0225] The control plane VCN 2516 may include a control plane DMZ layer 2520 (e.g., Fig.24 , which may include (one or more) LB subnets 2522 (e.g., Fig.24 (one or more) LB subnets 2422), may include (one or more) application subnets 2526 (e.g., Fig.24 (one or more) application subnets 2426) of the control plane application layer 2524 (e.g., Fig.24 The control plane application layer 2424 of FIG. 1 may include (one or more) database (DB) subnets 2530 (e.g., similar to Fig.24 (one or more) DB subnets 2430) of the control plane data layer 2528 (e.g., Fig.24 The LB subnet(s) 2522 contained in the control plane DMZ layer 2520 may be communicatively coupled to the application subnet(s) 2526 contained in the control plane application layer 2524 and the internet gateway 2534 (e.g., Fig.24 2434), and the application subnet(s) 2526 may be communicatively coupled to the DB subnet(s) 2530 and the service gateway 2536 (e.g., Fig.24 service gateway 2436) and network address translation (NAT) gateway 2538 (e.g., Fig.24The control plane VCN 2516 may include a service gateway 2536 and a NAT gateway 2538.

[0226] The control plane VCN 2516 may include a data plane mirror application layer 2540 (e.g., Fig.24 The data plane image application layer 2440). The application subnet(s) 2526 included in the data plane image application layer 2540 may include a computing instance 2544 (e.g., similar to Fig.24 The compute instance 2544 can facilitate the application subnet(s) 2526 of the data plane mirroring application layer 2540 and can be included in the data plane application layer 2546 (e.g., Fig.24 Communication between (one or more) application subnets 2526 in the data plane application layer 2446) via the VNIC 2542 contained in the data plane mirror application layer 2540 and the VNIC 2542 contained in the data plane application layer 2546.

[0227] The Internet gateway 2534 included in the control plane VCN 2516 can be communicatively coupled to the metadata management service 2552 (e.g., Fig.24 2552), which can be communicatively coupled to the public Internet 2554 (e.g., Fig.24 The public Internet 2554 can be communicatively coupled to the NAT gateway 2538 included in the control plane VCN 2516. The service gateway 2536 included in the control plane VCN 2516 can be communicatively coupled to the cloud services 2556 (e.g., Fig.24 Cloud service 2456).

[0228] In some examples, the data plane VCN 2518 may be contained in a customer lease 2521. In this case, the IaaS provider may provide a control plane VCN 2516 for each customer, and the IaaS provider may provision each customer with a unique compute instance 2544 contained in a service lease 2519. Each compute instance 2544 may allow communication between a control plane VCN 2516 contained in a service lease 2519 and a data plane VCN 2518 contained in a customer lease 2521. The compute instance 2544 may allow resources provisioned in a control plane VCN 2516 contained in a service lease 2519 to be deployed or otherwise used in a data plane VCN 2518 contained in a customer lease 2521.

[0229] In other examples, a customer of the IaaS provider may have a database that exists in the customer tenancy 2521. In this example, the control plane VCN 2516 may include a data plane mirror application layer 2540, which may include (one or more) application subnets 2526. The data plane mirror application layer 2540 may reside in the data plane VCN 2518, but the data plane mirror application layer 2540 may not be in the data plane VCN 2518. That is, the data plane mirror application layer 2540 may access the customer tenancy 2521, but the data plane mirror application layer 2540 may not exist in the data plane VCN 2518 or be owned or operated by the customer of the IaaS provider. The data plane mirror application layer 2540 may be configured to make calls to the data plane VCN 2518, but may not be configured to make calls to any entity contained in the control plane VCN 2516. A customer may desire to deploy or otherwise use resources provisioned in control plane VCN 2516 in data plane VCN 2518, and data plane mirror application layer 2540 may facilitate the customer's desired deployment or other use of resources.

[0230] In some embodiments, a customer of an IaaS provider may apply filters to a data plane VCN 2518. In this embodiment, the customer may determine what the data plane VCN 2518 may access, and the customer may restrict access to the public Internet 2554 from the data plane VCN 2518. The IaaS provider may not apply filters or otherwise control access to any external network or database by the data plane VCN 2518. The customer applying filters and controls to the data plane VCN 2518 contained in the customer lease 2521 may help isolate the data plane VCN 2518 from other customers and the public Internet 2554.

[0231] In some embodiments, cloud services 2556 may be called by service gateway 2536 to access services that may not exist on public Internet 2554, control plane VCN 2516, or data plane VCN 2518. The connection between cloud services 2556 and control plane VCN 2516 or data plane VCN 2518 may not be real-time or continuous. Cloud services 2556 may exist on different networks owned or operated by IaaS providers. Cloud services 2556 may be configured to receive calls from service gateway 2536 and may be configured not to receive calls from public Internet 2554. Some cloud services 2556 may be isolated from other cloud services 2556, and control plane VCN 2516 may be isolated from cloud services 2556 that may not be in the same region as control plane VCN 2516. For example, control plane VCN 2516 may be located in "Region 1", and cloud service "Deployment 24" may be located in Region 1 and "Region 2". If a service gateway 2536 contained in a control plane VCN 2516 located in region 1 makes a call to a deployment 24, the call may be transmitted to the deployment 24 in region 1. In this example, the control plane VCN 2516 or the deployment 24 in region 1 may not be communicatively coupled or otherwise in communication with the deployment 24 in region 2.

[0232] Fig.26 2600 is a block diagram illustrating another example model of an IaaS architecture according to at least one embodiment. A service operator 2602 (e.g., Fig.24 The service operator 2402) can be communicatively coupled to the secure host lease 2604 (e.g., Fig.24 The secure host lease 2404 may include a virtual cloud network (VCN) 2606 (e.g., Fig.24 VCN 2406) and secure host subnet 2608 (e.g., Fig.24 VCN 2606 may include LPG 2610 (e.g., Fig.24 ), which may be communicatively coupled to the SSH VCN 2612 via the LPG 2610 contained in the SSH VCN 2612 (e.g., Fig.24 SSH VCN 2412). SSH VCN 2612 may include SSH subnet 2614 (e.g., Fig.24 SSH subnet 2414 of the control plane VCN 2614), and SSH VCN 2612 can be communicatively coupled to control plane VCN 2616 via LPG 2610 contained in control plane VCN 2616 (e.g., Fig.24The control plane VCN 2416 of FIG. 2414 is coupled to the data plane VCN 2618 via the LPG 2610 included in the data plane VCN 2618 (e.g., Fig.24 The control plane VCN 2616 and the data plane VCN 2618 may be included in a service lease 2619 (e.g., Fig.24 Service lease 2419).

[0233] The control plane VCN 2616 may include a load balancer (LB) subnet 2622 (e.g., Fig.24 The control plane DMZ layer 2620 (e.g., Fig.24 The control plane DMZ layer 2420 may include (one or more) application subnets 2626 (e.g., similar to Fig.24 (one or more) application subnets 2426) of the control plane application layer 2624 (e.g., Fig.24 A control plane application layer 2424), a control plane data layer 2628 (e.g., Fig.24 The LB subnet(s) 2622 contained in the control plane DMZ layer 2620 may be communicatively coupled to the application subnet(s) 2626 contained in the control plane application layer 2624 and the Internet gateway 2634 (e.g., Fig.24 2434), and the application subnet(s) 2626 may be communicatively coupled to the DB subnet(s) 2630 and the service gateway 2636 (e.g., Fig.24 ) and a network address translation (NAT) gateway 2638 (e.g., Fig.24 The control plane VCN 2616 may include a service gateway 2636 and a NAT gateway 2638.

[0234] The data plane VCN 2618 may include a data plane application layer 2646 (e.g., Fig.24 Data plane application layer 2446), data plane DMZ layer 2648 (e.g., Fig.24 Data plane DMZ layer 2448), and data plane data layer 2650 (e.g., Fig.24The data plane DMZ layer 2648 may include (one or more) trusted application subnets 2660 and (one or more) untrusted application subnets 2662 that may be communicatively coupled to the data plane application layer 2646 and (one or more) LB subnets 2622 of the Internet gateway 2634 included in the data plane VCN 2618. The (one or more) trusted application subnets 2660 may be communicatively coupled to the service gateway 2636 included in the data plane VCN 2618, the NAT gateway 2638 included in the data plane VCN 2618, and (one or more) DB subnets 2630 included in the data plane data layer 2650. The (one or more) untrusted application subnets 2662 may be communicatively coupled to the service gateway 2636 included in the data plane VCN 2618 and (one or more) DB subnets 2630 included in the data plane data layer 2650. The data plane data layer 2650 may include (one or more) DB subnets 2630 that may be communicatively coupled to a service gateway 2636 included in the data plane VCN 2618.

[0235] The untrusted application subnet(s) 2662 may include one or more primary VNICs 2664(1)-(N) that may be communicatively coupled to tenant virtual machines (VMs) 2666(1)-(N). Each tenant VM 2666(1)-(N) may be communicatively coupled to a respective application subnet 2667(1)-(N) that may be contained in a respective container egress VCN 2668(1)-(N), which may be contained in a respective customer tenancy 2670(1)-(N). A respective secondary VNIC 2672(1)-(N) may facilitate communication between the untrusted application subnet(s) 2662 contained in the data plane VCN 2618 and the application subnets contained in the container egress VCN 2668(1)-(N). Each container egress VCN 2668(1)-(N) may include a NAT gateway 2638 that may be communicatively coupled to the public Internet 2654 (e.g., Fig.24 of the public Internet 2454).

[0236] An internet gateway 2634 included in control plane VCN 2616 and included in data plane VCN 2618 may be communicatively coupled to a metadata management service 2652 (e.g., Fig.242652), which can be communicatively coupled to the public Internet 2654. The public Internet 2654 can be communicatively coupled to a NAT gateway 2638 included in the control plane VCN 2616 and included in the data plane VCN 2618. The service gateway 2636 included in the control plane VCN 2616 and included in the data plane VCN 2618 can be communicatively coupled to the cloud service 2656.

[0237] In some embodiments, data plane VCN 2618 may be integrated with customer lease 2670. In some cases, such integration may be useful or desirable for customers of the IaaS provider, such as where support may be desired when executing code. A customer may provide code to run that may be destructive, may communicate with other customer resources, or may otherwise cause undesirable effects. In response to this, the IaaS provider may determine whether to run code given to the IaaS provider by the customer.

[0238] In some examples, a customer of an IaaS provider may grant temporary network access to the IaaS provider and request functionality attached to the data plane application layer 2646. Code running the functionality may be executed in a VM 2666(1)-(N), and the code may not be configured to run anywhere else on the data plane VCN 2618. Each VM 2666(1)-(N) may be connected to a customer tenancy 2670. The corresponding container 2671(1)-(N) contained in the VM 2666(1)-(N) may be configured to run the code. In this case, there may be double isolation (e.g., the container 2671(1)-(N) runs the code, where the container 2671(1)-(N) may be contained at least in a VM 2666(1)-(N) contained in (one or more) untrusted application subnets 2662), which may help prevent incorrect or otherwise undesirable code from damaging the IaaS provider's network or damaging the network of a different customer. Containers 2671(1)-(N) may be communicatively coupled to customer lease 2670 and may be configured to transmit or receive data from customer lease 2670. Containers 2671(1)-(N) may not be configured to transmit or receive data from any other entity in data plane VCN 2618. After running the code is complete, the IaaS provider may terminate or otherwise dispose of containers 2671(1)-(N).

[0239] In some embodiments, the trusted application subnet(s) 2660 may run code that may be owned or operated by the IaaS provider. In this embodiment, the trusted application subnet(s) 2660 may be communicatively coupled to the DB subnet(s) 2630 and configured to perform CRUD operations in the DB subnet(s) 2630. The untrusted application subnet(s) 2662 may be communicatively coupled to the DB subnet(s) 2630, but in this embodiment, the untrusted application subnet(s) may be configured to perform read operations in the DB subnet(s) 2630. The containers 2671(1)-(N) that may be included in each customer's VM 2666(1)-(N) and that may run code from the customer may not be communicatively coupled to the DB subnet(s) 2630.

[0240] In other embodiments, the control plane VCN 2616 and the data plane VCN 2618 may not be directly communicatively coupled. In this embodiment, there may be no direct communication between the control plane VCN 2616 and the data plane VCN 2618. However, communication may occur indirectly through at least one method. The LPG 2610 may be established by an IaaS provider, which may facilitate communication between the control plane VCN 2616 and the data plane VCN 2618. In another example, the control plane VCN 2616 or the data plane VCN 2618 may call the cloud service 2656 via the service gateway 2636. For example, the call from the control plane VCN 2616 to the cloud service 2656 may include a request for a service that can communicate with the data plane VCN 2618.

[0241] Fig. 27 2700 is a block diagram illustrating another example model of an IaaS architecture according to at least one embodiment. A service operator 2702 (e.g., Fig.24 The service operator 2402) can be communicatively coupled to the secure host lease 2704 (e.g., Fig.24 The secure host lease 2404 may include a virtual cloud network (VCN) 2706 (e.g., Fig.24 VCN 2406) and secure host subnet 2708 (e.g., Fig.24 VCN 2706 may include LPG 2710 (e.g., Fig.24 LPG 2410), which can be accessed via an LPG 2710 contained in an SSH VCN 2712 (e.g., Fig.24LPG 2710 in SSH VCN 2412 of the present invention is communicatively coupled to SSH VCN 2712. SSH VCN 2712 may include SSH subnet 2714 (e.g., Fig.24 SSH subnet 2414 of the control plane VCN 2716), and SSH VCN 2712 can be communicatively coupled to control plane VCN 2716 via LPG 2710 contained in control plane VCN 2716 (e.g., Fig.24 The control plane VCN 2416 of FIG. 2414 is coupled to the data plane VCN 2718 via the LPG 2710 included in the data plane VCN 2718 (e.g., Fig.24 The control plane VCN 2716 and the data plane VCN 2718 may be included in a service lease 2719 (e.g., Fig.24 Service lease 2419).

[0242] The control plane VCN 2716 may include (one or more) LB subnets 2722 (e.g., Fig.24 The control plane DMZ layer 2720 (e.g., Fig.24 The control plane DMZ layer 2420 may include (one or more) application subnets 2726 (e.g., Fig.24 (one or more) application subnets 2426) of the control plane application layer 2724 (e.g., Fig.24 control plane application layer 2424), may include (one or more) DB subnets 2730 (e.g., Fig.26 (one or more) DB subnets 2630) of the control plane data layer 2728 (e.g., Fig.24 The LB subnet(s) 2722 contained in the control plane DMZ layer 2720 may be communicatively coupled to the application subnet(s) 2726 contained in the control plane application layer 2724 and the Internet gateway 2734 (e.g., Fig.24 2434), and the application subnet(s) 2726 may be communicatively coupled to the DB subnet(s) 2730 and the service gateway 2736 (e.g., Fig.24 ) and a network address translation (NAT) gateway 2738 (e.g., Fig.24 The control plane VCN 2716 may include a service gateway 2736 and a NAT gateway 2738.

[0243] The data plane VCN 2718 may include a data plane application layer 2746 (e.g., Fig.24 Data plane application layer 2446), data plane DMZ layer 2748 (e.g., Fig.24 Data plane DMZ layer 2448)), and data plane data layer 2750 (e.g., Fig.24 The data plane DMZ layer 2748 may include (one or more) trusted application subnets 2760 (e.g., Fig.26 (one or more) trusted application subnets 2660) and (one or more) untrusted application subnets 2762 (e.g., Fig.26 The trusted application subnet(s) 2760 may be communicatively coupled to the service gateway 2736 contained in the data plane VCN 2718, the NAT gateway 2738 contained in the data plane VCN 2718, and the DB subnet(s) 2730 contained in the data plane data layer 2750. The untrusted application subnet(s) 2762 may be communicatively coupled to the service gateway 2736 contained in the data plane VCN 2718 and the DB subnet(s) 2730 contained in the data plane data layer 2750. The data plane data layer 2750 may include the DB subnet(s) 2730 that may be communicatively coupled to the service gateway 2736 contained in the data plane VCN 2718.

[0244] The untrusted application subnet(s) 2762 may include primary VNICs 2764(1)-(N) that may be communicatively coupled to tenant virtual machines (VMs) 2766(1)-(N) residing within the untrusted application subnet(s) 2762. Each tenant VM 2766(1)-(N) may run code in a corresponding container 2767(1)-(N) and may be communicatively coupled to an application subnet 2726 that may be contained in a data plane application layer 2746 that may be contained in a container egress VCN 2768. Corresponding secondary VNICs 2772(1)-(N) may facilitate communications between the untrusted application subnet(s) 2762 contained in the data plane VCN 2718 and the application subnets contained in the container egress VCN 2768. The container egress VCN may include a primary VNIC that may be communicatively coupled to a public Internet 2754 (e.g., Fig.24 NAT gateway 2738 for the public Internet 2454).

[0245] The Internet gateway 2734 included in the control plane VCN 2716 and included in the data plane VCN 2718 can be communicatively coupled to the metadata management service 2752 (e.g., Fig.24 2752), which can be communicatively coupled to the public Internet 2754. The public Internet 2754 can be communicatively coupled to a NAT gateway 2738 contained in the control plane VCN 2716 and contained in the data plane VCN 2718. The service gateway 2736 contained in the control plane VCN 2716 and contained in the data plane VCN 2718 can be communicatively coupled to the cloud service 2756.

[0246] In some examples, Fig. 27 The architecture model shown in block diagram 2700 can be considered as Fig.26 2600, and may be desired by customers of the IaaS provider if the IaaS provider cannot communicate directly with the customer (e.g., in a disconnected region). The customer may have real-time access to the corresponding container 2767(1)-(N) contained in each customer's VM 2766(1)-(N). The container 2767(1)-(N) may be configured to make calls to the corresponding secondary VNIC 2772(1)-(N) contained in the (one or more) application subnets 2726 of the data plane application layer 2746, which may be contained in the container egress VCN 2768. The secondary VNIC 2772(1)-(N) may transmit the call to the NAT gateway 2738, which may transmit the call to the public Internet 2754. In this example, containers 2767(1)-(N), which may be accessed by customers in real time, may be isolated from control plane VCN 2716 and may be isolated from other entities contained in data plane VCN 2718. Containers 2767(1)-(N) may also be isolated from resources from other customers.

[0247] In other examples, a customer may use containers 2767(1)-(N) to call cloud service 2756. In this example, a customer may run code in containers 2767(1)-(N) to request a service from cloud service 2756. Containers 2767(1)-(N) may transmit the request to secondary VNICs 2772(1)-(N), which may transmit the request to a NAT gateway, which may transmit the request to the public Internet 2754. The public Internet 2754 may transmit the request to LB subnet(s) 2722 contained in control plane VCN 2716 via Internet gateway 2734. In response to determining that the request is valid, the LB subnet(s) may transmit the request to application subnet(s) 2726, which may transmit the request to cloud service 2756 via service gateway 2736.

[0248] It should be appreciated that the IaaS architectures 2400, 2500, 2600, 2700 depicted in the various figures may have other components in addition to those depicted. In addition, the embodiments shown in the various figures are merely some examples of cloud infrastructure systems that may be combined with embodiments of the present disclosure. In some other embodiments, the IaaS system may have more or fewer components than shown in the various figures, may combine two or more components, or may have a different configuration or arrangement of components.

[0249] In certain embodiments, the IaaS system described herein may include application suites, middleware, and database service offerings delivered to customers in a self-service, subscription-based, elastically scalable, reliable, highly available, and secure manner. An example of such an IaaS system is Oracle Cloud Infrastructure (OCI) provided by the assignee.

[0250] Fig.28 An example computer system 2800 is illustrated in which various embodiments may be implemented. System 2800 may be used to implement any of the computer systems described above. As shown, computer system 2800 includes a processing unit 2804 that communicates with multiple peripheral subsystems via a bus subsystem 2802. These peripheral subsystems may include a processing acceleration unit 2806, an I / O subsystem 2808, a storage subsystem 2818, and a communication subsystem 2824. Storage subsystem 2818 includes a tangible computer-readable storage medium 2822 and a system memory 2810.

[0251] The bus subsystem 2802 provides a mechanism for allowing the various components and subsystems of the computer system 2800 to communicate with each other by intention. Although the bus subsystem 2802 is schematically shown as a single bus, an alternative embodiment of the bus subsystem can utilize multiple buses. The bus subsystem 2802 can be any of several types of bus structures, including a memory bus or a memory controller, a peripheral bus, and a local bus using any various bus architectures. For example, this architecture can include an industrial standard architecture (ISA) bus, a microchannel architecture (MCA) bus, an enhanced ISA (EISA) bus, a video electronics standard association (VESA) local bus, and a peripheral component interconnect (PCI) bus, which can be implemented as a Mezzanine bus manufactured by the IEEE P1386.1 standard.

[0252] The processing unit 2804, which may be implemented as one or more integrated circuits (e.g., conventional microprocessors or microcontrollers), controls the operation of the computer system 2800. One or more processors may be included in the processing unit 2804. These processors may include single-core or multi-core processors. In certain embodiments, the processing unit 2804 may be implemented as one or more independent processing units 2832 and / or 2834, wherein a single-core or multi-core processor is included in each processing unit. In other embodiments, the processing unit 2804 may also be implemented as a quad-core processing unit formed by integrating two dual-core processors into a single chip.

[0253] In various embodiments, the processing unit 2804 can execute various programs in response to the program code and can maintain multiple concurrently executed programs or processes. At any given time, some or all of the program code to be executed may reside in (one or more) processors 2804 and / or in the storage subsystem 2818. Through appropriate programming, (one or more) processors 2804 can provide the various functions described above. The computer system 2800 can additionally include a processing acceleration unit 2806, which can include a digital signal processor (DSP), a special processor, and the like.

[0254] I / O subsystem 2808 may include user interface input devices and user interface output devices. User interface input devices may include a keyboard, a pointing device such as a mouse or trackball, a touch pad or touch screen incorporated into a display, a scroll wheel, a click wheel, a dial, buttons, switches, a keypad, an audio input device with a voice command recognition system, a microphone, and other types of input devices. User interface input devices may include, for example, motion sensing and / or gesture recognition devices such as Microsoft Motion sensors that enable users to control apps such as Microsoft 360 game controller. The user interface input device may also include an eye gesture recognition device, such as detecting eye activity from the user (e.g., a "wink" when taking a picture and / or making a menu selection) and translating eye gestures to the input device (e.g., Google ) in Google In addition, the user interface input device may include a user interface that enables the user to communicate with the voice recognition system (e.g., Navigator) interactive voice recognition sensing device.

[0255] The user interface input device may also include, but is not limited to, a three-dimensional (3D) mouse, a joystick or pointing stick, a game panel and a drawing board, and audio / video equipment such as a speaker, a digital camera, a digital video camera, a portable media player, a webcam, an image scanner, a fingerprint scanner, a barcode reader 3D scanner, a 3D printer, a laser rangefinder, and a sight tracking device. In addition, the user interface input device may include, for example, a medical imaging input device such as a computer tomography, a magnetic resonance imaging, a positron emission tomography, a medical ultrasound device. The user interface input device may also include, for example, an audio input device such as a MIDI keyboard, a digital musical instrument, etc.

[0256] The user interface output devices may include a display subsystem, indicator lights, or non-visual displays such as audio output devices, etc. The display subsystem may be a cathode ray tube (CRT), a flat panel device such as using a liquid crystal display (LCD) or plasma display, a projection device, a touch screen, etc. In general, the use of the term "output device" is intended to include all possible types of devices and mechanisms for outputting information from the computer system 2800 to a user or other computers. For example, the user interface output devices may include, but are not limited to, various display devices that visually convey text, graphics, and audio / video information, such as monitors, printers, speakers, headphones, car navigation systems, plotters, voice output devices, and modems.

[0257] Computer system 2800 may include a storage subsystem 2818 that provides a tangible, non-transitory computer-readable storage medium for storing software and data constructs that provide the functionality of the embodiments described in the present disclosure. The software may include programs, code modules, instructions, scripts, etc. that provide the above-described functionality when executed by one or more cores or processors of processing unit 2804. Storage subsystem 2818 may also provide a repository for storing data used in accordance with the present disclosure.

[0258] like Fig.28 As depicted in the example of , storage subsystem 2818 may include various components, including system memory 2810, computer-readable storage media 2822, and computer-readable storage media reader 2820. System memory 2810 may store program instructions that may be loaded and executed by processing unit 2804. System memory 2810 may also store data used during the execution of instructions and / or data generated during the execution of program instructions. Various different kinds of programs may be loaded into system memory 2810, including but not limited to client applications, web browsers, middle-tier applications, relational database management systems (RDBMS), virtual machines, containers, and the like.

[0259] System memory 2810 may also store an operating system 2816. Examples of operating system 2816 may include various versions of Microsoft Apple and / or Linux operating system, various commercial or UNIX-like operating systems (including but not limited to various GNU / Linux operating systems, Google OS, etc.) and / or mobile operating systems (such as iOS, Phone, OS, OS and In some embodiments where the computer system 2800 executes one or more virtual machines, the virtual machines along with their guest operating systems (GOS) may be loaded into the system memory 2810 and executed by one or more processors or cores of the processing unit 2804.

[0260] The system memory 2810 can be configured in different ways depending on the type of computer system 2800. For example, the system memory 2810 can be volatile memory, such as random access memory (RAM), and / or non-volatile memory, such as read-only memory (ROM), flash memory, etc. Different types of RAM configurations can be provided, including static random access memory (SRAM), dynamic random access memory (DRAM), etc. In some embodiments, the system memory 2810 can include a basic input / output system (BIOS), which contains the basic routines that help transfer information between elements within the computer system 2800, such as during startup.

[0261] Computer-readable storage media 2822 may represent remote, local, fixed and / or removable storage devices and storage media for temporarily and / or more permanently containing and storing computer-readable information for use by computer system 2800 (including instructions executable by processing unit 2804 of computer system 2800).

[0262] Computer readable storage media 2822 may include any suitable media known or used in the art, including storage media and communication media, such as, but not limited to, volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage and / or transmission of information. This may include tangible computer readable storage media, such as RAM, ROM, electrically erasable programmable ROM (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or other tangible computer readable media.

[0263] By way of example, computer-readable storage media 2822 may include a hard drive that reads from or writes to non-removable nonvolatile magnetic media, a magnetic disk drive that reads from or writes to removable nonvolatile magnetic disks, and a magnetic disk drive that reads from or writes to removable nonvolatile optical disks (such as CD ROMs, DVDs, and optical drives). Computer readable storage media 2822 may include, but are not limited to, The computer readable storage medium 2822 may include a solid-state drive (SSD) based on non-volatile memory (such as a flash memory-based SSD, an enterprise flash drive, a solid-state ROM, etc.), a volatile memory-based SSD (such as a solid-state RAM, a dynamic RAM, a static RAM), a DRAM-based SSD, a magnetoresistive RAM (MRAM) SSD, and a hybrid SSD using a combination of DRAM and flash memory-based SSDs. The disk drive and its associated computer-readable media may provide non-volatile storage of computer-readable instructions, data structures, program modules, and other data for the computer system 2800.

[0264] Machine-readable instructions executable by one or more processors or cores of processing unit 2804 may be stored on a non-transitory computer-readable storage medium. A non-transitory computer-readable storage medium may include a physically tangible memory or storage device, including a volatile memory storage device and / or a non-volatile storage device. Examples of non-transitory computer-readable storage media include magnetic storage media (e.g., disks or tapes), optical storage media (e.g., DVDs, CDs), various types of RAM, ROM, or flash memory, a hard drive, a floppy disk drive, a detachable memory drive (e.g., a USB drive), or other types of storage devices.

[0265] The communication subsystem 2824 provides an interface to other computer systems and networks. The communication subsystem 2824 is used as an interface for receiving data from other systems and sending data from the computer system 2800 to other systems. For example, the communication subsystem 2824 can enable the computer system 2800 to be connected to one or more devices via the Internet. In some embodiments, the communication subsystem 2824 may include a radio frequency (RF) transceiver component for accessing a wireless voice and / or data network (e.g., using cellular phone technology, advanced data network technology such as 3G, 4G or EDGE (Enhanced Data Rates for Global Evolution), WiFi (IEEE 802.11 series standards), or other mobile communication technologies, or any combination thereof), a global positioning system (GPS) receiver component and / or other components. In some embodiments, as an addition or replacement of a wireless interface, the communication subsystem 2824 may provide a wired network connection (e.g., Ethernet).

[0266] In some embodiments, the communication subsystem 2824 may also receive input communications in the form of structured and / or unstructured data feeds 2826 , event streams 2828 , event updates 2830 , and the like on behalf of one or more users who may use the computer system 2800 .

[0267] For example, the communication subsystem 2824 may be configured to receive data feeds 2826 in real time from users of social networks and / or other communication services, such as feed, Updates, web feeds such as Rich Site Summary (RSS) feeds, and / or real-time updates from one or more third-party information sources.

[0268] Additionally, the communication subsystem 2824 may also be configured to receive data in the form of a continuous data stream, which may include event streams 2828 and / or event updates 2830, which may be continuous or unbounded in nature, real-time events without explicit termination. Examples of applications that generate continuous data may include, for example, sensor data applications, financial quote machines, network performance measurement tools (e.g., network monitoring and traffic management applications), clickstream analysis tools, automotive traffic monitoring, and the like.

[0269] The communication subsystem 2824 may also be configured to output structured and / or unstructured data feeds 2826 , event streams 2828 , event updates 2830 , etc. to one or more databases that may be in computer communication with one or more streaming data source computers coupled to the computer system 2800 .

[0270] Computer system 2800 may be one of various types, including a handheld portable device (e.g., Cellular phone, computing tablets, PDAs), wearable devices (e.g. Glass head mounted display), PC, workstation, mainframe, kiosk, server rack, or any other data processing system.

[0271] Due to the ever-changing nature of computers and networks, the description of the computer system 2800 depicted in the figure is intended only as a specific example. Many other configurations with more or fewer components than the system depicted in the figure are possible. For example, customized hardware may also be used and / or specific elements may be implemented with hardware, firmware, software (including applets), or a combination thereof. In addition, connections to other computing devices such as network input / output devices may also be employed. Based on the disclosure and teachings provided herein, one of ordinary skill in the art will recognize other ways and / or methods of implementing various embodiments.

[0272] The embodiments may be implemented by using a computer program product, comprising a computer program / instructions which, when executed by a processor, cause the processor to perform any of the methods described in the present disclosure.

[0273] Although specific embodiments have been described, various modifications, variations, alternative constructions, and equivalent forms are also included within the scope of this disclosure. Embodiments are not limited to operating within certain specific data processing environments, but can be freely operated within multiple data processing environments. In addition, although embodiments have been described using a specific series of transactions and steps, it should be clear to those skilled in the art that the scope of this disclosure is not limited to the described series of transactions and steps. The various features and aspects of the above-described embodiments may be used alone or in combination.

[0274] In addition, although embodiments have been described using specific combinations of hardware and software, it should be appreciated that other combinations of hardware and software are also within the scope of the present disclosure. Embodiments may be implemented using only hardware, or only software, or using a combination thereof. The various processes described herein may be implemented in any combination on the same processor or on different processors. Accordingly, where a component or service is described as being configured to perform certain operations, such configuration may be accomplished by, for example, designing electronic circuits to perform the operations, by programming programmable electronic circuits (such as microprocessors) to perform the operations, or any combination thereof. Processes may communicate using a variety of techniques, including but not limited to conventional techniques for inter-process communication, and different pairs of processes may use different techniques, or the same pair of processes may use different techniques at different times.

[0275] Accordingly, the description and drawings are to be regarded as illustrative rather than restrictive. However, additions, subtractions, deletions and other modifications and changes may be made thereto without departing from the broader spirit and scope set forth in the claims. Therefore, although specific disclosed embodiments have been described, these are not intended to be limiting. Various modifications and equivalent forms are within the scope of the following claims.

[0276] The use of the terms "one" and "an" and "the" and similar references in the context of describing the disclosed embodiments (especially in the context of the following claims) is to be interpreted as covering the singular and the plural, unless otherwise indicated herein or clearly contradicted by the context. Unless otherwise stated, the terms "include", "have", "include (including)" and "include (containing)" are to be interpreted as open terms (i.e., meaning "including but not limited to"). The term "connected" should be interpreted as being partially or completely contained in, attached to or connected together, even if there is something in the middle. Unless otherwise indicated herein, the enumeration of the value range herein is intended only to be used as a shorthand method of individually referencing each individual value falling within the range, and each individual value is incorporated into the specification as if it were individually listed herein. Unless otherwise indicated herein or clearly contradicted by the context, all methods described herein can be performed in any suitable order. The use of any and all examples or exemplary language (e.g., "such as") provided herein is intended only to better illustrate the embodiments and is not intended to limit the scope of the present disclosure, unless otherwise stated. No language in the specification should be construed as indicating any non-claimed element as essential to the practice of the disclosure.

[0277] Disjunctive language, such as the phrase "at least one of X, Y, or Z," is intended to be understood in the context generally used to indicate that an item, term, or the like, can be X, Y, or Z, or any combination thereof (e.g., X, Y, and / or Z), unless expressly stated otherwise. Thus, such disjunctive language is generally not intended to, and should not, imply that certain embodiments require that at least one of X, at least one of Y, or at least one of Z each be present.

[0278] Preferred embodiments of the present disclosure are described herein, including known best modes for carrying out the present disclosure. After reading the foregoing description, variations of these preferred embodiments may become apparent to those of ordinary skill in the art. Those of ordinary skill should be able to appropriately adopt such variations, and may practice the present disclosure in a manner different from that specifically described herein. Accordingly, the present disclosure includes all modifications and equivalent forms of the subject matter recorded in the appended claims where permitted by applicable law. Moreover, unless otherwise indicated herein, the present disclosure includes any combination of the above-mentioned elements in all possible variations thereof.

[0279] Example embodiments of the present disclosure may be described according to the following clauses.

[0280] Clause 1. A method is disclosed. The method may include obtaining, by an application of a cloud computing environment, deployment data corresponding to a dedicated cloud via a plurality of user interfaces. In some embodiments, the dedicated cloud may be associated with a plurality of cloud infrastructure components that provide corresponding cloud services associated with a cloud service provider, and the plurality of cloud infrastructure components will be hosted by one or more computing devices located at a third-party location. In some embodiments, the third-party location may be associated with a third-party entity that is different from the cloud service provider. The method may include tracking the deployment data by the application based at least in part on input provided via the plurality of user interfaces. The method may include transitioning, by the application, a deployment state associated with hardware on which the dedicated cloud is deployed, the deployment state transitioning from a first state to a second state based at least in part on tracking. In some embodiments, the first state and the second state may each be one of a plurality of states in a sequence associated with the dedicated cloud deployment. The method may include presenting, by the application at one or more of the plurality of user interfaces, information indicating a transition from a first state to a second state of the deployment state.

[0281] Clause 2. The method of clause 1, further comprising validating, by the application, the locale data based at least in part on performing one or more validation operations on the locale data provided via the one or more user interfaces.

[0282] Clause 3. The method of clause 1 or 2, wherein at least one of the plurality of user interfaces is configured to obtain workload data identifying one or more workloads to be executed by the plurality of cloud infrastructure components of the private cloud.

[0283] Clause 4. The method of clause 3, further comprising identifying one or more hardware components for the dedicated cloud based at least in part on the identified one or more workloads, the one or more hardware components being identified from a plurality of available hardware components.

[0284] Clause 5. The method of clause 4, further comprising presenting, by the application, one or more user interface elements, the one or more user interface elements presenting hardware data specifying the one or more hardware components.

[0285] Clause 6. The method of clause 5, further comprising tracking, by the application, a plurality of deployment conditions corresponding to respective deployments of the plurality of dedicated host regions. The method may further comprise generating, by the application, one or more visual representations based at least in part on tracking the plurality of deployment conditions corresponding to the respective deployments. The method may further comprise presenting the one or more visual representations within at least one user interface of the plurality of user interfaces.

[0286] Clause 7. The method of claim 6, further comprising transitioning, by the application, a regional state associated with provisioning hardware for the dedicated cloud. In some embodiments, the regional state is transitioned from a third state to a fourth state based at least in part on the tracking. In some embodiments, the third state and the fourth state are each one of a second plurality of states in a second predefined order associated with provisioning hardware for the regional cloud. The method may also include presenting, by the application at one or more user interfaces, an indication that the regional state has transitioned from the third state to the fourth state.

[0287] Clause 8. A computing device is disclosed. The computing device may be part of a cloud computing environment. The computing device may include one or more processors and one or more memories for storing computer-executable instructions, which, when executed by the one or more processors of the computing device, cause the computing device to perform the method of any one of clauses 1-7.

[0288] Clause 9. A non-transitory computer-readable medium is disclosed. The non-transitory computer-readable medium may store computer-executable instructions that, when executed by a processor of a computing device, cause the computing device to perform the method of any one of clauses 1-7.

[0289] Clause 10. A computing system is disclosed. The computing system may include one or more processors and one or more memories storing computer-executable instructions, which, when executed by one or more processors of a computing device, cause the computing device to perform the method of any one of clauses 1-7.

[0290] All references, including publications, patent applications, and patents, cited herein are hereby incorporated by reference to the same extent as if each reference were individually and specifically indicated to be incorporated by reference and were set forth in its entirety herein.

[0291] In the foregoing description, various aspects of the present disclosure are described with reference to their specific embodiments, but those skilled in the art will appreciate that the present disclosure is not limited thereto. Each feature and aspect disclosed above can be used alone or in combination. In addition, without departing from the broader spirit and scope of this specification, the embodiment can be used in any number of environments and applications other than those described herein. Accordingly, this specification and the accompanying drawings should be considered illustrative rather than restrictive.

Claims

1. A method comprising: obtaining, by an application of the cloud computing environment via a plurality of user interfaces, deployment data corresponding to a private cloud, the private cloud being associated with a plurality of cloud infrastructure components that provide a corresponding cloud service associated with a cloud service provider, the plurality of cloud infrastructure components to be hosted by one or more computing devices located at a third-party location, and the third-party location being associated with a third-party entity that is different from the cloud service provider; tracking, by an application, deployment data based at least in part on input provided via the plurality of user interfaces; transitioning, by the application, a deployment state associated with hardware on which the dedicated cloud is deployed, the deployment state transitioning from a first state to a second state based at least in part on the tracking, the first state and the second state each being one of a plurality of states in a sequence associated with the dedicated cloud deployment; as well as Information indicating a transition from a first state to a second state of a deployed state is presented, by the application, at one or more of the plurality of user interfaces. 2 . The method of claim 1 , further comprising validating, by the application, the locale data based at least in part on performing one or more validation operations on the locale data provided via the one or more user interfaces.

3. The method of claim 1 or 2, wherein at least one of the plurality of user interfaces is configured to obtain workload data identifying one or more workloads to be executed by the plurality of cloud infrastructure components of the dedicated cloud.

4. The method of claim 3, further comprising identifying one or more hardware components for a dedicated cloud based at least in part on the identified one or more workloads, the one or more hardware components being identified from a plurality of available hardware components. 5 . The method of claim 4 , further comprising presenting, by the application, one or more user interface elements presenting hardware data specifying the one or more hardware components.

6. The method of claim 5, further comprising: Tracking, by the application, a plurality of deployment states corresponding to respective deployments in the plurality of dedicated host regions; generating, by the application, one or more visual representations based at least in part on tracking the plurality of deployment conditions corresponding to respective deployments; as well as The one or more visual representations are presented within at least one user interface of the plurality of user interfaces.

7. The method of claim 6, further comprising: transitioning, by the application, a zone state associated with provisioning hardware for the dedicated cloud, the zone state transitioning from a third state to a fourth state based at least in part on the tracking, the third state and the fourth state each being one of a second plurality of states in a second predefined order associated with provisioning the regional cloud hardware; and An indication is presented, by the application, at the one or more user interfaces that the zone state has transitioned from the third state to the fourth state.

8. A computing device in a cloud computing environment, the computing device comprising: one or more processors; as well as One or more memories storing computer-executable instructions that, when executed by one or more processors of a computing device, cause the computing device to: obtaining, via a plurality of user interfaces, deployment data corresponding to a private cloud, the private cloud being associated with a plurality of cloud infrastructure components that provide a corresponding cloud service associated with a cloud service provider, the plurality of cloud infrastructure components to be hosted by one or more computing devices located at a third-party location, the third-party location being associated with a third-party entity that is different from the cloud service provider; tracking deployment data based at least in part on input provided via the plurality of user interfaces; transitioning a deployment state associated with hardware deploying the dedicated cloud, the deployment state transitioning from a first state to a second state based at least in part on the tracking, the first state and the second state each being one of a plurality of states in a sequence associated with the dedicated cloud deployment; as well as Information indicating a transition from a first state to a second state of a deployed state is presented at one or more of the plurality of user interfaces.

9. The computing device of claim 8, wherein execution of the computer-executable instructions further causes the computing device to validate the locale data based at least in part on performing one or more validation operations on the locale data provided via the one or more user interfaces.

10. A computing device as described in claim 8 or 9, wherein at least one of the multiple user interfaces is configured to obtain workload data that identifies one or more workloads to be executed by the multiple cloud infrastructure components of the dedicated cloud.

11. The computing device of claim 10, wherein executing the computer executable instructions further causes the computing device to identify one or more hardware components for the dedicated cloud based at least in part on the identified one or more workloads, the one or more hardware components being identified from a plurality of available hardware components.

12. The computing device of claim 11, wherein execution of the computer-executable instructions further causes the computing device to present one or more user interface elements that present hardware data specifying the one or more hardware components.

13. The computing device of claim 12, wherein execution of the computer executable instructions further causes the computing device to: Tracking multiple deployment statuses corresponding to respective deployments in multiple dedicated host regions; generating one or more visual representations based at least in part on tracking the plurality of deployment conditions corresponding to respective deployments; as well as The one or more visual representations are presented within at least one user interface of the plurality of user interfaces.

14. The computing device of claim 13, wherein execution of the computer executable instructions further causes the computing device to: transitioning a regional state associated with provisioning hardware for a dedicated cloud, the regional state transitioning from a third state to a fourth state based at least in part on the tracking, the third state and the fourth state each being one of a second plurality of states in a second predefined order associated with provisioning regional cloud hardware; and An indication is presented at the one or more user interfaces that the zone status has transitioned from the third state to the fourth state.

15. A non-transitory computer-readable medium storing computer-executable instructions that, when executed by a processor of a computing device, cause the computing device to: obtaining, via a plurality of user interfaces, deployment data corresponding to a private cloud, the private cloud being associated with a plurality of cloud infrastructure components that provide a corresponding cloud service associated with a cloud service provider, the plurality of cloud infrastructure components to be hosted by one or more computing devices located at a third-party location, the third-party location being associated with a third-party entity that is different from the cloud service provider; tracking deployment data based at least in part on input provided via the plurality of user interfaces; transitioning a deployment state associated with hardware deploying the dedicated cloud, the deployment state transitioning from a first state to a second state based at least in part on the tracking, the first state and the second state each being one of a plurality of states in a sequence associated with the dedicated cloud deployment; as well as Information indicating a transition from a first state to a second state of a deployed state is presented at one or more of the plurality of user interfaces.

16. The non-transitory computer-readable medium of claim 15, wherein execution of the computer-executable instructions further causes the computing device to validate the locale data based at least in part on performing one or more validation operations on the locale data provided via the one or more user interfaces.

17. A non-transitory computer-readable medium as described in claim 15 or 16, wherein at least one of the multiple user interfaces is configured to obtain workload data that identifies one or more workloads to be performed by the multiple cloud infrastructure components of the dedicated cloud, and wherein execution of the computer-executable instructions also causes the computing device to identify one or more hardware components for the dedicated cloud based at least in part on the identified one or more workloads, the one or more hardware components being identified from a plurality of available hardware components.

18. The non-transitory computer-readable medium of claim 17, wherein execution of the computer-executable instructions further causes the computing device to present one or more user interface elements presenting hardware data specifying the one or more hardware components.

19. The non-transitory computer readable medium of claim 18, wherein executing the computer executable instructions further causes the computing device to: Tracking multiple deployment statuses corresponding to respective deployments in multiple dedicated host regions; generating one or more visual representations based at least in part on tracking the plurality of deployment conditions corresponding to respective deployments; as well as The one or more visual representations are presented within at least one user interface of the plurality of user interfaces.

20. The non-transitory computer readable medium of claim 19, wherein executing the computer executable instructions further causes the computing device to: transitioning a regional state associated with provisioning hardware for a dedicated cloud, the regional state transitioning from a third state to a fourth state based at least in part on the tracking, the third state and the fourth state each being one of a second plurality of states in a second predefined order associated with provisioning regional cloud hardware; and An indication is presented at the one or more user interfaces that the zone status has transitioned from the third state to the fourth state.