Software Component (Container + Containee) Software Component (Container + Containee) WebServer HostedOn Compute (Container) Compute (Container) Exploring.

Slides:



Advertisements
Similar presentations
Distributed Data Processing
Advertisements

Docker Container Modeling Goals Goals (not requirements) Not proliferate Node Types for “Docker” 1.Consider modeling “Docker” as an (explicit) runtime.
Docker Container Modeling Goals Goals (not requirements) Not proliferate Node Types for “Docker” 1.Consider modeling “Docker” as an (explicit) runtime.
ContainerApp Container -X memory -Y CPU -Z Storage -N Network -Port ContainerManager Container Hypervisor (Java Runtime) -Understands IaaS of Cloud / Provider.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
TOSCA SugarCRM Deployment
FI-WARE – Future Internet Core Platform FI-WARE Cloud Hosting July 2011 High-level description.
Software Component (Container + Containee) Software Component (Container + Containee) WebServer HostedOn Compute (Container) Compute (Container) Exploring.
Container Hierarchies and Related Issues
ANDROID PROGRAMMING MODULE 1 – GETTING STARTED
INTRODUCTION TO CLOUD COMPUTING Cs 595 Lecture 5 2/11/2015.
Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard TOSCA Interoperability Demonstration Join the TOSCA Technical Committee.
Evaluate container lifecycle support in TOSCA TOSCA – 174 Adhoc TC.
Cloud Computing Systems Lin Gu Hong Kong University of Science and Technology Sept. 21, 2011 Windows Azure—Overview.
TOSCA Workloads with OpenStack Heat-Translator
Software Component (Container + Containee) Software Component (Container + Containee) WebServer HostedOn Compute (Container) Compute (Container) Exploring.
TOSCA Interoperability Demonstration
TOSCA Monitoring Working Group Status Roger Dev August 10, 2015.
Windows Azure Conference 2014 Running Docker on Windows Azure.
Cloud Computing. What is Cloud Computing? Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
Proposal by CA Technologies, IBM, SAP, Vnomic
2 © 2015 Pivotal Software, Inc. All rights reserved. 2 Removing Barriers Between Dev and Ops It Takes a Platform VMworld 1 September 2015 Cornelia.
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
Network Connectivity Use Case Modeling and YAML Syntax
Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard TOSCA Interoperability Demonstration Join the TOSCA Technical Committee.
Kubernetes Analysis: 2 types of containers
NETWORK CONNECTIVITY USE CASES AT CARRIER / SERVICE PROVIDERS CloudBand June 2014.
Software Component (Container + Containee) Software Component (Container + Containee) WebServer HostedOn Compute (Container) Compute (Container) Exploring.
Kind: “Pod” (i.e. Type) kind: “Pod” (i.e. Type) Kubernetes Analysis: 2 types of containers “Dumb” (no HA, no Autoscale) = Pod Template kind: “ReplicationController”
Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.
SugarCRM Service Template
Building micro-service based applications using Azure Service Fabric
Kind: “Pod” (i.e. Type) kind: “Pod” (i.e. Type) Kubernetes Analysis: 2 types of containers “Dumb” (no HA, no Autoscale) = Pod Template kind: “ReplicationController”
Evaluate container lifecycle support in TOSCA TOSCA – 174 Adhoc TC.
Azure in a Day Training: Windows Azure Module 1: Windows Azure Overview Module 2: Development Environment / Portal – DEMO: Signing up for Windows Azure.
How TOSCA Adds Value in NFV world
TOSCA Interoperability Demonstration
Evaluate container lifecycle support in TOSCA TOSCA – 174 Adhoc TC.
Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.
#msitconf. Damien Caro Technical Evangelist Manager, Что будет, если приложение поместить в контейнер? What happens if the application.
Evaluate container lifecycle support in TOSCA TOSCA – 174 Adhoc TC.
1 Cluster – defn. TBD Derek: Homogenous set of nodes; in TOSCA that is a single node template. -Matt said this can also be viewed as a stack -- Derek can.
Update for tosca-nfv-profile
Introduction to Oracle Forms Developer and Oracle Forms Services
Unit 3 Virtualization.
Containers as a Service with Docker to Extend an Open Platform
Accelerate your DevOps with OpenShift by Red Hat
Dockerize OpenEdge Srinivasa Rao Nalla.
Introduction to Oracle Forms Developer and Oracle Forms Services
Docker Birthday #3.
Kubernetes Analysis: 2 types of containers
Introduction to Oracle Forms Developer and Oracle Forms Services
Microservices, Docker, .NET, Windows, Linux, Azure. Oh, My!
OASIS TOSCA Report for December ONAP Event
Drupal VM and Docker4Drupal For Drupal Development Platform
TOSCA Namespaces Explained
TOSCA Matching Or how the orchestrator provides implementation for abstract nodes or dangling requirements.
Drupal VM and Docker4Drupal as Consistent Drupal Development Platform
02 | Hosting Services in Windows Azure
Intro to Docker Containers and Orchestration in the Cloud
TOSCA Workflow Proposal
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
SwImageDesc Shitao li.
Developing for the cloud with Visual Studio
Learn. Imagine. Build. .NET Conf
Orchestration & Container Management in EGI FedCloud
OpenShift as a cloud for Data Science
Containers on Azure Peter Lasne Sr. Software Development Engineer
Presentation transcript:

Software Component (Container + Containee) Software Component (Container + Containee) WebServer HostedOn Compute (Container) Compute (Container) Exploring Containment in TOSCA: Modeling WebServer with Compute Properties num_cpus mem_size disk_size Capabilities Requirements Container OpSys Scalable Container Artifacts Apache.TAR scripts requirements: - host: capability: tosca.capabilities.Container node: tosca.nodes.Compute relationship: tosca.relationships.HostedOn capabilities: host: type: tosca.capabilities.Container valid_source_types: [tosca.nodes.SoftwareComponent] capabilities: host: type: tosca.capabilities.Container valid_source_types: [ tosca.nodes.WebApplication ] Capabilities Container Effectively… Compute is a Container (Node Type) SoftwareComponent is both a Container and Containee (Node Type)

Docker Container Modeling Goals Goals (not requirements) Not proliferate Node Types for “Docker” 1.Consider modeling “Docker” as an (explicit) runtime Capability Type 2.Consider using a Property either within existing Container Capability Type within a new Containee Node Type Note: this is essentially how Azure PaaS does it 3.Consider using Artifact Type (i.e., Docker image) to imply Runtime Note: this is how CloudFoundry PaaS works (introspects app’s code) Allow model to allow Docker container so that it can be run on a PaaS (implicit container) an IaaS platform (explicit container) Note: this implies Compute Node and Container Node have interchangeable capabilities. If the Docker image has a WebServer (e.g., Apache) inside it, we want to reflect this in the TOSCA model Consider using existing WebServer Node Type Consider using a new WebServer Capability Type

Hosted On Software Component Container (Docker Runtime Capability) Container (Docker Runtime Capability) Modeling Container-Containee like Compute-Software Component Expressing “Docker” as a Capability Type Containee (Docker Runtime Requirement) Containee (Docker Runtime Requirement) Requirement s Container Capabilities Container Docker Requirement s Docker artifacts: - image: mime_type: Docker repo: xxx URI: xxx Software Component (Container + Containee) Software Component (Container + Containee) WebServer Compute (Container) Compute (Container) Capabilities Requirements Container OpSys Scalable Container Capabilities Container Artifacts Docker Image (Apache.TAR) requirements: - host: capability: tosca.capabilities.Container node: NULL relationship: tosca.relationships.HostedOn capabilities: host: type: tosca.capabilities.Container valid_source_types: [NULL] Requirement s Container IaaS Modeling -Compute is explicit or implicit PaaS Modeling Container is explicit or implicit Agnostic Cloud Foundry Azure Problem: How do we form a Relationship between Docker Requirement and Docker Capability? Do we need to? directive: substitutable

Hosted On Software Component Container (Docker Runtime Capability) Container (Docker Runtime Capability) Modeling Container-Containee like Compute-Software Component Expressing “Docker” as a Capability Type Containee (Docker Runtime Requirement) Containee (Docker Runtime Requirement) Requirements Capabilities artifacts: - image: mime_type: Docker?? repo: xxx, URI: xxx Artifacts Docker Image (Apache.TAR) requirements: - host: capability: tosca.capabilities.Container node: NULL relationship: tosca.relationships.HostedOn target_filter: capabilities: host: - type: docker capabilities: host: type: tosca.capabilities.Container valid_source_types: [NULL] Problem: How do we form a Relationship between Docker Requirement and Docker Capability? Do we need to? Compute Node has “Operating System” Capability Software Component uses “target_filter” to declare “os” properties No relationship However… OperatingSystem Capability has “type-like” Properties inside it: (now optional) Architecture (now optional) Type (now optional) Distribution (optional) Version If we follow this paradigm we would add “type-like” Properties to Container Capability: (optional) Runtime Type: “Docker” (optional) Version Container runtime_type: docker Container runtime_type: docker Container - type: docker Container - type: docker Policy (Kubernetes, Mesosphere) Placement/affinity Scaling affect cluster allocation Do not care about implementation

tosca.capabilities.Container: derived_from: tosca.capabilities.Roottosca.capabilities.Root properties: runtimes: type: tosca.datatypes.container.Runtime[] num_cpus: type: integer constraints: - greater_or_equal: 1 disk_size: type: scalar-unit.sizescalar-unit.size constraints: - greater_or_equal: 0 MB mem_size: type: scalar-unit.sizescalar-unit.size constraints: - greater_or_equal: 0 MB Conceptually: A logical Container MAY support 1..n runtime environments These runtimes MAY be versioned Define new Datatype to reflect the type/version pairing Containers Virtualize runtime resources CPU/VPU, memory, local storage Compute is a Container, but these properties are now in the Node Recommend: Move properties to Container capability We SHOULD denote Compute node as “selectable” for most (every?) use case tosca.datatypes.container.Runtime: properties: # runtime type, e.g. Docker, Rocket, Java, etc. type: type: string # runtime version, JRE7, version: type: version required: false default: 0 name: type: string required false

TOSCA will want to be able to show modeling against Docker “Compose” (links and components) with a basic lifecycle (fig now deprecated) announced : Show how we address their “roadmap” items already… “More than just development environments” Over time we will extend Compose's remit to cover test, staging and production environments. This is not a simple task, and will take many incremental improvements such as: Compose’s brute-force “delete and recreate everything” approach is great for dev and testing, but it not sufficient for production environments. You should be able to define a "desired" state that Compose will intelligently converge to. It should be possible to partially modify the config file for different environments (dev/test/staging/prod), passing in e.g. custom ports or volume mount paths. (#426)#426 Compose should recommend a technique for zero-downtime deploys.