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 Goals All 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
Growing list of Open Source Technologies on Azure MS Integrated Ecosystem Provided Languages, Dev Tools, & App Containers PaaS & orchestration Azure PaaS Azure VM Scale Set Azure Service Fabric Devices Via HTMl/JS, cross-platform and native Databases DocDB DataStax Management Puppet Ansible Operating systems IDE Ubuntu SUSE, OpenSUSE, OpenLogic CentOS-based Oracle Linux, CoreOS Bring your own
Azure Resource Manager Azure Templates can: Ensure Idempotency My App Instantiation of repeatable config. Configuration Resource Group Simplify Orchestration [SQL CONFIG] VM (2x) Simplify Roll-back Provide Cross-Resource Configuration and Update Support Azure Templates are: DEPENDS ON SQL DEPENDS ON SQL Source file, can be checked-in Specifies resources and dependencies (VMs, WebSites, DBs) and connections (config, LB sets) Support parametrized input/output SQL Website Virtual Machines SQLCONFIG
Azure Stack For Private and Hybrid Clouds.
Power of Azure with the control of the datacenter Introducing the Microsoft Azure Stack Datacenter
Azure Datacenters
Azure Cloud Foundry Components Bosh Release Cloud Provider Interface (CPI) for Bosh. BOSH interface 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.
CF Deploy Experience AZURE ENVIRONMENT DEPLOY CF ON AZURE Account (Subscription, Storage account) Network environment (V-net, Reserved IP ) V-net with 2 sub-nets (For Bosh and CF ) Reserved IP for Bosh and CF Security Create a service principal for the subscription 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 Project Learnings: 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. Public community Beta with external CPI. 2. Upstream code into CF source tree. 3. CF on Azure cluster end to end deployment guidance. 4. Hybrid integration.
Resources GitHub Project Link: https://github.com/azure/bosh Use GitHub for feedbacks and bugs