Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to Cloud Foundry

Introduction to Cloud Foundry

Presented at Singapore Ruby Group

Michael Cheng

January 24, 2017
Tweet

More Decks by Michael Cheng

Other Decks in Programming

Transcript

  1. Platform as a Service • Platform as a service (PaaS)

    is a category of cloud computing services that provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure typically associated with developing and launching an app. • Other people’s server, they maintain it, you just deploy your code + data.
  2. Platform as a Service • Public Cloud - Heroku, Google

    App Engine, Red Hat’s OpenShift, AWS Elastic Beanstalk, IBM Bluemix, Azure App Services • Private Cloud - Cloud Foundry, OpenShift, Bluemix, Deis, Dokku
  3. What is Cloud Foundry? • Cloud Foundry is a open

    source PaaS software. • Cloud Foundry is a platform for developing and running cloud applications. • 12 Factor Apps (http://12factor.net)
  4. What is Cloud Foundry? • Works with many languages and

    frameworks. • A platform that allows you to automatically provision resources. • Enables continuous integration/ continuous delivery. • Allows you to focus on writing cloud native applications.
  5. Languages Supported • Java - Grails, Play, Spring, or any

    other JVM-based language or framework • Ruby - JRuby, Rack, Rails, or Sinatra • Node.js - Node or JavaScript • Binary • Go • PHP - Cake, Symfony, Zend, Nginx, or HTTPD • Python - Django or Flask • Staticfile - HTML, CSS, JavaScript, or Nginx
  6. What is Pivotal Cloud Foundry? • Pivotal Cloud Foundry is

    a reference implementation of Cloud Foundry for the enterprise. • Open source software provides the basis for the Pivotal Cloud Foundry platform. • Pivotal offers additional commercial features, enterprise services, support, docs, certs, etc.
  7. Cloud Foundry vs PCF • PCF is easier to install

    • Has nicer web GUI. • Additional features like auto-scaling, LDAP/AD (SAML) support, metrics server, notifications, Ops Metrics. • Many of the services come installed by default (MongoDB, Neo4J, RabbitMQ, Redis, etc). vs
  8. Pivotal Web Services (PWS) • Hosted version of PCF. •

    Exactly the same user experience / features. • Register for a free trial account. • http://run.pivotal.io
  9. Using PCF • Mainly interface using the Command Line Interface

    (CLI) • Download the CF CLI here: https://console.run.pivotal.io/2/tools • Alternative download: https://github.com/cloudfoundry/ cli#downloads
  10. Deployment Manifest • Application manifests tell cf push what to

    do with applications. • This includes everything from how many instances to create and how much memory to allocate to what services applications should use. • YAML format. • Online Generator: http://cfmanigen.mybluemix.net
  11. Login to app container • All apps run in a

    linux container (LXC) • You can SSH into the container if you need to take a look at what’s going on (eg. troubleshooting, verify file version, etc) • cf ssh <app_name> -i <instance_number>
  12. More things… • User-provided services - enable developers to use

    services that are not available in the marketplace with their applications running on Cloud Foundry.
 (Reference: http://docs.pivotal.io/pivotalcf/1-7/devguide/services/user-provided.html) • Managed Services for Cloud Foundry - services integrated with Cloud Foundry via APIs, and enable end users to provision reserved resources and credentials on demand.
 (Reference: http://docs.pivotal.io/pivotalcf/1-7/services/index.html)
  13. Q&A