Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on Azure

20
Managing Hybrid deployments using Cloud Foundry on Azure NING KUANG & KUNDANA PALAGIRI – PROGRAM MANAGERS , AZURE COMPUTE

Transcript of Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on Azure

Managing Hybrid deployments using Cloud Foundry on Azure

N I N G KUA N G & KU N D A N A PA L A G I R I – P R O G R A M M A N A G E R S , A Z U R E C O M P U T E

Session Takeaways

◦ Learn about Azure Support for Cloud Foundry.

◦ How to manage your workloads using Cloud Foundry in Azure

Cloud or a Hybrid Cloud Environment.

Cloud Foundry on Azure

BOSH CPI Implemented using the Azure Resource Manager APIs(Under public preview).

Leverages Azure Templates for simplifying deployment steps.

Embraces the community model for the CPI.

Consistent user experience for multi cloud strategy.

Extends onprem workloads to Azure seamlessly.

Azure Engineering GoalsAll Open Source

◦ Ship an all open source version under the Apache 2.0 license.

◦ Project URL : https://github.com/Azure/bosh

Be Part of the Community◦ Provide consistent experience with all Cloud Providers.

◦ Align with Community’s engineering practices.

Simplified Deployment on Azure◦ Provide resource template to automate the Azure environment setup.

◦ Provide guidance for Cloud Foundry cluster setup.

Committed Roadmap◦ Ongoing commitment to enhance CF support on Azure.

Why Azure?Azure as an open cloud supports

◦ Hyper scale

◦ Enterprise Grade

◦ Hybrid Environments.

Azure Footprint

19

Growing list of Open Source Technologies on Azure

Via HTMl/JS, cross-platform and native

Ecosystem Provided

Languages, Dev

Tools, & App

Containers

PaaS &

orchestration

Devices

Databases

Management

MS Integrated

Operating

systems

Ubuntu

SUSE, OpenSUSE,

OpenLogic CentOS-based

Oracle Linux, CoreOS

Bring

your own

DocDB

DataStax

Ansible

Puppet

Azure PaaS

Azure VM Scale Set

Azure Service Fabric

Azure Templates can:

• Ensure Idempotency

• Simplify Orchestration

• Simplify Roll-back

• Provide Cross-Resource Configuration and Update

Support

Azure Templates are:

• Source file, can be checked-in

• Specifies resources and dependencies (VMs,

WebSites, DBs) and connections (config, LB sets)

• Support parametrized input/output

Instantiation of repeatable config.Configuration Resource Group

Azure Resource Manager

SQL Website VirtualMachines

My App

[SQL CONFIG] VM (2x)

DEPENDS ON SQLDEPENDS ON SQL

SQLCONFIG

Pre-requisites for setting up a Bosh VM- Using a Template

Create a Storage Account

Create a Virtual Network

Create a Reserved IP for Bosh

Prepare a Bosh client(dev box)

Hybrid Cloud Environments

Azure Based Private CloudYour own custom Datacenter

Microsoft Azure

Azure StackFor Private and Hybrid Clouds.

Power of Azure with the control of the datacenterMicrosoft Azure Stack

Datacenter

Azure

Datacenters

Azure Cloud Foundry ComponentsBosh Release

◦ Cloud Provider Interface (CPI) for Bosh.◦ BOSH components to support Azure

Azure Stem Cell

Azure Resource Manager Template for setting up the environment

Guidance for both single node and multi node CF deployments

Guidance for CF Cluster setup

CF Deploy Experience

AZURE ENVIRONMENT

Account ◦ Subscription, Storage Account

Network environment◦ V-net with 2 sub-nets

◦ Reserved IP for Bosh and CF

Security◦ Service principal for the subscription

DEPLOY CF ON AZURE

Create a Dev working machine ◦ Linux or a Mac.

◦ Download Stemcell and Bosh release.

Configure and deploy Micro Bosh.

Configure and deploy Bosh (Optional)

Configure and deploy CF

Single click deployment of the above using an Azure Template.

CF Deploy steps that’s consistent with other clouds.

CF Template for Azure

Create the Azure network resource and Storage account

◦ VM, V-net, Public IP, Storage account

Access from Azure portal or scripting

Customize the parameters and settings

3 Simple steps Load an existing template

Customize it

Deploy

◦ All of the above can be automated.

Demo

1. Creating an Azure environment via ARM (Azure Resource Manager)

2. Deploy a “Hello CF” Application on Azure

Learnings from the CF ProjectLearnings:

• Leverage the power of community : Well structured and a compatible model to fit into different cloud platforms.

Great help from the Community: Nicholas Terry, Dmitriy Kalinin

Abundant resources: libraries, docs and forums.

Quick iterative process for validation.

• Align internal goals with Community Goals: Have a single unified goal as opposed to two.

Challenges • Working with moving parts.

Looking forward to external CPI model.

What's coming next?

1. Preview this week, from GitHub

2. Community Beta, moving to external CPI

3. Upstream code into CF source tree, getting community approval

4. CF on Azure cluster end to end deployment guidance.

5. Hybrid integration.

Resources

GitHub Project Link: https://github.com/Azure/bosh

Use GitHub for feedbacks and bugs