Gathering Important Application Information for Oracle Cloud Migration

Many organizations are looking into migrating their applications to Oracle cloud and with time their numbers are only going to be increased. There are many ways to migrate your application to Oracle cloud, but they all have one common important phase called application discovery. Application discovery is a process where you collect in-depth information about your source environment for a purpose of Cloud migration. There is a lot already published about public cloud migrations, but very little information is available about application discovery process. Cloud application discovery process is one of the most important initial phases for any cloud migration. This phase will not only help you see if your application is a good fit for public cloud, it will also help you reduce road blocks and technical issues during the actual migration. If you have a complete detailed discovery of your application before the migration, it will also help you plan migration project and reduce post migration issues. 

General Application Questions: –

Here are some sample questions that you can ask during your initial contact with application team.   

  1. What is the name & version of the application?
  2. Who are the IT owners of target application?
  3. What type of database and version used by this application?
  4. Who is the technical subject matter expert for this application?
  5. Is this a vendor or in-house build application?
  6. Does this application use or mange compliance data like PCI or HIPPA?
  7. Can you provide us any architectural documents for this application?
  8. Does this application have a DR or load balance solution built-in?
  9. Is there a middleware component to this application (WebLogic or WebSphere)?  
  10. Who are the business users and owner of this application?           

It’s important to provide background to the target audience like explaining reason for this contact. This initial contact can lead to very important feedback like “This application is already retired” or “This application can never move to cloud for ABC reasons”. Ideally, you will use collected information and architectural documents to get ready for the deep dive into the upcoming discovery steps.

Detail Application Questions: –

Here are examples of some details that you can gather for each section of your detail application discovery phase:

  • Application components:
    • Is there a middle component of application? If yes, detail.
    • Is there a DR for this application? If yes, detail.
    • Is there a Load balance component to this application?  If yes, detail.
  • Application dependency:
    • Is there a dependency with other applications? If yes, detail.
    • Is this an internal or customer facing application?  
    • Is this application part of group maintenance window? If yes, detail.
  • Networking Detail:
    • Is this application sensitive to network bandwidth? Large data transfer?
    • What are Firewall rules needed for this application?
    • Is there any large amount of data transfer happening to or from the application?
  • Database information:
    • What type of database/version is used by the application?
    • What is the size and growth rate of application database?
    • What is the RPO/RTO for the database?  
  • Application Support:
    • Is this a vendor application with support contract in-place? If yes, detail
    • Who is supporting this application? what are their names? 
    • Is this application certified to run from Oracle public cloud? 
  • Storage Detail:
    • How much total storage is used by target application?
    • What type of storage used by target application? NFS, Flash, SAN
    • Is IOP/s required by this application or database?
  • Hostname information:
    • How many hosts use this application and what are the details?
    • What are the OS types used by target application?
    • Can we upgrade or change underlying operating system if not available in Oracle Cloud?
  • Risks / Issues:
    • Is there a compliance requirement for this application?
    • Do you need to re-architect or make code changes for Cloud migration?
    • Is there a risk to migrate application from physical to virtual hosts?  

Overview of Application Discovery process for Oracle Cloud migration

Many organizations are looking into migrating their applications to Oracle cloud and with time their numbers are only going to be increased. There are many ways to migrate your application to Oracle cloud, but they all have one common important phase called application discovery. Application discovery is a process where you collect in-depth information about your source environment for a purpose of Cloud migration. There is a lot already published about public cloud migrations but very little information is available about application discovery process. Cloud application discovery process is one of the most important initial phases for any cloud migration. This phase will not only help you see if your application is a good fit for public cloud, it will also help you reduce road blocks and technical issues during the actual migration. If you have a complete detailed discovery of your application before the migration, it will also help you plan migration project and reduce post migration issues.   

As mentioned earlier, application discovery process involves gathering detailed information about the target application. This may include conducting interviews with application users & developers, application & data profiling and hardware & network profiling. Application discovery process usually start with interviewing technical and business users to help them understand application functionality, logic and flow of the target application. You can also start application profiling while you are conducting interviews, this process will involve using many techniques and tools to gather application components, dependencies, security, data and compliance information about the target environment. Similarly, you will need to profile existing hardware and network to map out target environments to services and resources available in Oracle public cloud. It’s important to note that Oracle Public cloud is enterprise cloud offering many application components as a platform for services like Load Balancer, DBaaS, GoldenGate, Business intelligence etc. I will recommend that you analyze and compare all your application components to see if you can replace any of your application component with Oracle cloud service to decrease the cost and increase availability. 

It is also important to understand that there are few application discovery tools offered by cloud vendors which can facilitate application discovery process. But we found that those tools were not helpful in many situations since very few customers will let you connect to their production systems using those tools. Keeping that in mind, this article is mostly focused on manual process and steps to complete application discovery process while referencing many Oracle and third-party tools as needed. Additionally, application discovery process is almost the same for any public cloud migration, but this article will focus on Oracle public cloud.

Do you need detail application discovery for Oracle cloud migration?

Many of you must be wondering why we need a detailed discovery process for Oracle cloud migration. Why not just do a Proof of Concept (POC) for the target application to assess feasibility of Oracle cloud migration and iron out migration issues along the way. Based on my experience, POC for Oracle cloud migration will only work for one or two applications, this approach will not work if you are looking to migrate a group of applications. Additionally, POC will require more upfront cost and resources versus application discovery process. Finally, it will take longer to discover if target application is a good fit for Oracle public cloud through POC versus application discovery process.

I cannot overstate the importance of performing detail application discovery for Oracle cloud migration.  Application discovery is crucial to migrate all the applications, but level of detail can vary based on criticality of the application. There are many critical phases of Oracle cloud migration like provisioning, testing and migration, which will depend on detailed application discovery process. For example, you will not be able to provision Oracle cloud environment if you have not collected hardware and network information for the target application. Secondly, you will not able to identify any road blocks to the migration beforehand and that can lead to a waste of capital or even failed migration project.