DevDays Vilnius 2019

 

May 14-16, 2019

Lajos Sárecz

Oracle, Hungary

BIO

Lajos received his M.Sc in 2000 from the Faculty of Electrical Engineering and Informatics, Technical University Budapest, and he also received a postgraduate degree of economics in 2008. He started his professional career as a Java developer and joined Oracle as a sales consultant back in 2003. Initially he covered the Oracle Database product portfolio, later he focused on Exadata and Engineered Systems. In recent years Lajos is specialized on Oracle Cloud, more specifically his domain of expertise is IaaS. In 2018 Lajos joined the Cloud Expert Solution Engineering Team, which is covering MEA and CEE region.

— WORKSHOP —

Oracle for Developers: Microservices on Kubernetes and Autonomous Database

Abstract

This workshop will walk you through the steps to set up a Continuous Integration / Continuous Delivery (CI/CD) environment for developing Microservices, based on the automation possible in Oracle Developer Cloud and deploying all components on Oracle’s Managed Container platform and the Oracle Autonomous Transaction Processing database.

Agenda

Part 1: Introduction to Oracle Cloud Infrastructure (OCI) and Autonomous Transaction Processing (ATP).

Part 2: Provisioning an Autonomous Transaction Processing Database Instance using the OCI Console. This part walks you through the steps to get started using the Oracle Autonomous Transaction Processing Database on Oracle Cloud Infrastructure (OCI):

  • Sign in to Oracle Cloud Infrastructure console
  • Create a Compartment
  • Create an ATP Instance

Part 3: Secure Connectivity and Data Access

  • Download the secure connection wallet for your provisioned instance
  • Connect to the ATP instance with SQL Developer

Part 4: Setting up Developer Cloud Project

  • Create a project environment
  • Fetch and review code from the Git repository
  • Cloning repository on local machine

Part 5: Data Loading into ATP. In this part, you will be creating a few tables and inserting data into the ATP database using the CI/CD features of Developer Cloud. We’ll use the Build engine of DevCS to set up a flow that will create the necessary objects in the database, and insert data into the tables. In case these elements are changed in the repository, the script will trigger again and re-create the database element

  • Set up ATP Wallet in Developer Cloud
  • Create and load data in the database
  • Set up a DeleteDBObjects job and automate a Pipeline

Part 6: Setup your Managed Kubernetes Instance. This part describes how to instantiate an Oracle Managed Kubernetes cluster using Terraform, including all the required network elements such as VNC’s, subnets and access lists

  • Create a Compartment for Kubernetes nodes
  • Add a Policy Statement for OKE (Container Engine for Kubernetes)
  • Create an API user with a certificate
  • Collect Infrastructure Info for your environment
  • Set the Terraform parameters and run the script
  • Validate and connect to the Kubernetes cluster

Part 7: Build a Container image with the application running on ATP. In this part, you’ll learn how to build a Docker image for a Node.js REST service on Oracle Developer Cloud Service (DevCS), using an ATP database as it’s data source.

  • Configure the connection to OCIR Docker Repository
  • Configure the Docker build job for building container
  • Execute the Docker commands
  • Configure scripts to point environment
  • Run the Build Job

Part 8: Deploy container on top of Kubernetes Cluster. In this section you will create a second build job to run the container you created on the Kubernetes Cluster you set up.

  • Set up Deploy Build Job
  • Configure the environment to point to cloud instance
  • Execute and validate new job
  • Installing Kubectl and visualizing the service to obtain the URL of application

Objectives

The main goal of this workshop is to introduce participants with main concepts of CI/CD for developing Microservices, Oracle’s Managed Container platform and Autonomous Database.  

Target audience

Developers, DevOps Engineers, Architects

Technical requirements

Required Artifacts:

  • Oracle SQL Developer 18.3. If you do not have SQL Developer 18.3, you can download from here
  • Kubectl
  • SSH or Putty