Build Scientific Computing Infrastructure with Rebar3 and Docker. Eric Sage

Similar documents
OSIsoft PI World 2018

Creating a Hybrid Gateway for API Traffic. Ed Julson API Platform Product Marketing TIBCO Software

EASILY DEPLOY AND SCALE KUBERNETES WITH RANCHER

Overview SENTINET 3.1

Think Small to Scale Big

Kubernetes Integration Guide

Important DevOps Technologies (3+2+3days) for Deployment

Containerised Development of a Scientific Data Management System Ben Leighton, Andrew Freebairn, Ashley Sommer, Jonathan Yu, Simon Cox LAND AND WATER

Welcome to Docker Birthday # Docker Birthday events (list available at Docker.Party) RSVPs 600 mentors Big thanks to our global partners:

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

Hybrid Cloud Automation using Cisco CloudCenter API

Microservice Bus Tutorial. Huabing Zhao, PTL of MSB Project, ZTE

Docker and Oracle Everything You Wanted To Know

Developing Kubernetes Services

XML in the bipharmaceutical

NA120 Network Automation 10.x Essentials

Integration Framework. Architecture

Reactive Microservices Architecture on AWS

Enabling Open Science: Data Discoverability, Access and Use. Jo McEntyre Head of Literature Services

Dr. Roland Huß, Red

Getting Started With Serverless: Key Use Cases & Design Patterns

DevOps Technologies. for Deployment

Overview of Cisco License Manager

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

CONTAINER CLOUD SERVICE. Managing Containers Easily on Oracle Public Cloud

Title DC Automation: It s a MARVEL!

Docker CaaS. Sandor Klein VP EMEA

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

No Limits Cloud Introducing the HPE Helion Cloud Suite July 28, Copyright 2016 Vivit Worldwide

D360: Unlock the value of your scientific data Solving Informatics Problems for Translational Research

One Platform Kit: The Power to Innovate

The Why, What, and How of Cisco Tetration

The Modern Web Access Management Platform from on-premises to the Cloud

FuncX: A Function Serving Platform for HPC. Ryan Chard 28 Jan 2019

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

ebook ADVANCED LOAD BALANCING IN THE CLOUD 5 WAYS TO SIMPLIFY THE CHAOS

Microservices with Red Hat. JBoss Fuse

How Can Testing Teams Play a Key Role in DevOps Adoption?

Motivation and Intro. Vadim Ermolayev. MIT2: Agent Technologies on the Semantic Web

SOLUTION BRIEF RSA NETWITNESS SUITE & THE CLOUD PROTECTING AGAINST THREATS IN A PERIMETER-LESS WORLD

Using AWS to Build a Large Scale Dockerized Microservices Architecture. Dr. Oliver Wahlen moovel Group GmbH Frankfurt, 30.

Accenture Cloud Platform Serverless Journey

Powering Knowledge Discovery. Insights from big data with Linguamatics I2E

Kuber-what?! Learn about Kubernetes

Digital Enterprise Platform for Live Business. Kevin Liu SAP Greater China, Vice President General Manager of Big Data and Platform BU

Kubernetes made easy with Docker EE. Patrick van der Bleek Sr. Solutions Engineer NEMEA

Docker Universal Control Plane Deploy and Manage On-Premises, Your Dockerized Distributed Applications

Building Kubernetes cloud: real world deployment examples, challenges and approaches. Alena Prokharchyk, Rancher Labs

Orchestration: Accelerate Deployments and Reduce Operational Risk. Nathan Pearce, Product Development SA Programmability & Orchestration Team

Security Challenges: Integrating Apple Computers into Windows Environments

Categorized software tools: (this page is being updated and links will be restored ASAP. Click on one of the menu links for more information)

Cloud Computing Introduction & Offerings from IBM

Mesos at Yelp: Building a production ready PaaS. Rob Johnson

Get Started with Cisco DNA Center

Fixing the "It works on my machine!" Problem with Docker

BUILDING A SCALABLE MOBILE GAME BACKEND IN ELIXIR. Petri Kero CTO / Ministry of Games

Building A Better Test Platform:

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

Containers and the Evolution of Computing

Sentinet for BizTalk Server SENTINET

Transform Your Enterprise Search and ediscovery on the AWS Cloud.

Push straight to prod

MSB to Support for Carrier Grade ONAP Microservice Architecture. Huabing Zhao, PTL of MSB Project, ZTE

VMware ESX Server 3i. December 2007

Advances in Data Integration & Representation in Systems Biology

Building Microservices with the 12 Factor App Pattern

Utilizing Container Technology to Streamline Data Science

Mesosphere and the Enterprise: Run Your Applications on Apache Mesos. Steve Wong Open Source Engineer {code} by Dell

Executive Committee Meeting

Working with Cisco UCS Manager

Revolutionize the Way You Work With IMS Applications Using IBM UrbanCode Deploy Evgeni Liakhovich, IMS Developer

Hi! NET Developer Group Braunschweig!

OpenShift Roadmap Enterprise Kubernetes for Developers. Clayton Coleman, Architect, OpenShift

Construct a sharable GPU farm for Data Scientist. Layne Peng DellEMC OCTO TRIGr

AWS Integration Guide

Discovery Net : A UK e-science Pilot Project for Grid-based Knowledge Discovery Services. Patrick Wendel Imperial College, London

Zero to Microservices in 5 minutes using Docker Containers. Mathew Lodge Weaveworks

Isolation Forest for Anomaly Detection

DOCS

A Glance Over the Serverless Framework

CC13c LifeCycle Management. Infrastructure at your Service.

Achieving Digital Transformation: FOUR MUST-HAVES FOR A MODERN VIRTUALIZATION PLATFORM WHITE PAPER

Cisco Unified Computing System Delivering on Cisco's Unified Computing Vision

Self-driving Datacenter: Analytics

Techno Expert Solutions

Mesosphere and Percona Server for MongoDB. Jeff Sandstrom, Product Manager (Percona) Ravi Yadav, Tech. Partnerships Lead (Mesosphere)

Beyond the IPv4 Internet. Geoff Huston Chief Scientist, APNIC

Sentinet for Microsoft Azure SENTINET

VMworld 2018 Call for Papers

The Long Road from Capistrano to Kubernetes

Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Authentication with OAuth 2.0

BUILDING MICROSERVICES ON AZURE. ~ Vaibhav

Data Mining Technologies for Bioinformatics Sequences

/ Cloud Computing. Recitation 5 February 14th, 2017

EXPANDING ACCESS TO HEALTHCARE FOR EVERYONE, EVERYWHERE. NICK DONOWITZ COO

Windows Azure Services - At Different Levels

Accelerate at DevOps Speed With Openshift v3. Alessandro Vozza & Samuel Terburg Red Hat

TEN LAYERS OF CONTAINER SECURITY. Kirsten Newcomer Security Strategist

CADEC 2016 MICROSERVICES AND DOCKER CONTAINERS MAGNUS LARSSON

Transcription:

Build Scientific Computing Infrastructure with Rebar3 and Docker Eric Sage

A scientific telecommunications network Hello, I d like an automated gene ontology please!

Agenda - An example biological service - Gather requirements - Bad Solutions - Our Solution - Details - Evaluation

Biology today, a quick example: Gene Annotations A network where leaves represent genes and parents represent the relationships of genes (Gene products). Example: GO (Gene Ontology) a way of standardizing the annotation. Relationship Gene Gene

What can we do with a biological network? - Differential Analysis - analyze and predict perturbations and alterations - Big data integrations - models for clinical diagnoses and predictions - multi-scale - link networks together to create hierarchical

Going beyond GO: Automation Gene annotations as a service Example: atgo, builds annotations using machine learning Data Annotations as a service Annotated Network Annotation as a service

The Goal A world where a biologist can write biologically useful code that can last and make it available to the masses.

A Problem with the Computational Ecosystem Biologists: - Have little time to invest - Construct poor implementations - Suffer from reinvention Software is hard, Biology is hard, you should only pick one.

Gathering Requirements We need systems that we can - scale - distribute - locate - evolve - verify

A Service Oriented Architecture Approach With a SOA we can provide - Standardization - Discoverability - Evolvability Network Biology Community Service Service Service

How to implement a SOA? A few OK ideas - Enforce an ecosystem - Enforce quality (The Jeff Bezos mandate) - Enforce an enterprise tool (Enterprise Service Bus) We need to shepard emerging computational communities with as little overhead as possible.

Elsa: The Erlang Submit Agent AaaS User v2 AaaS Elsa Node v1 AaaS User Clients Services v1 - Allows clients to submit jobs to a network of services. - Provides a protocol for long running jobs, a must have for scientific computing.

Service Domains Elsa as a Relay network Client Elsa Node Client - Clients send requests to nodes. Client Elsa Node Service Service - A node can relay to another node in order to fulfill a request. - A set of connected nodes Elsa Node Elsa Node Client - forms a domain. Service AaaS AaaS

Service Domain API Elsa also provides a restful API available to clients, services, and external tools that provides: - Service Discovery - Task Resources - Introspection - Atomic resources (threads) - Logs

A regular service call GET http://www.mappingservice.com/mapping/4324234

The anatomy of a service call GET http://www.myelsadomain.com/idmapper/v1.0.1/mapping/4324234 The location of an elsa node in the domain. The service name Service Calls allow: - API Preserveration - Advanced versioning - v0.1.0^ - v0.1.* The service version The service endpoint

If you know REST, you know how to build a service - All scientists create REST services. - Vast majority of languages provide easy to use web frameworks - A short jump to convert a CLI command or any function to a REST handler - Resources abound online Step 1) Register the server via json Service Step 2) Receive a request Elsa Node Step 3) Fulfill request, go to step 2

A sample registration { service: idmapper, version: v1, instances: [ We can register as many instances as want { location: http://123.321.123.321:8080, threads: 32, Optional syslog: http://syslog.myservices.org:3000 Optional }, { location: http://123.321.123.321:8081 } ] } Elsa handles - Versioning - Finding instances - Forwarding pertinent logs - Load balancing - Discovery - Long running jobs - Partial service failure Erlang provides robustness in the face of questionable service quality!

Deploying Nodes without fear Even if it s easy to call a service, and write a service, deploying nodes must also require little effort. Tools in the arsenal: - Rebar3 - Docker - OTP

Elsa Development - Elsa, written from inside of a container - Two Dockerfiles, dev and prod - Dev: Uses a large custom dev base image - Prod: The sys.config get s swapped for a container specific sys.config.docker - Prod creates releases, dev uses rebar3 shell - Rebar3 makes Erlang development simple for everyone (Thanks Rebar3 team!) Macbook - Set docker entrypoint to rebar Erlang Development Container AWS Instance

Service Deployment: Docker on-build On-build injected registration service FROM bioservice:r FROM bioservice:python FROM bioservice:node Note: This isn t the same as a per language framework Biological Service

Deployment made easy - Just use Docker - Deploy nodes, services using containers - Deploy entire domains using compose or kubernetes, pick your favorite Note: Elsa Nodes need to run one container to a host!

- Central point of failure Elsa Evaluation Pros: - Little investment - Easy to use - Benefits of SOA - Central point of development Con: - MS delay for round trip requests

Examples of computing in biology 1. Protein structure determination with X-ray crystallography or NMR. 2. Whole genome sequencing and assembly 3. Simulation of biomolecules with molecular dynamics 4. Gene expression analysis 5. Phylogenetic (evolutionary) analysis

Synthetic Evolution: Where to go next - Administration GUI - Pluggable service scheduling - Optional service patterns - Reduce node latency - Increase distributability - Global Elsa network

Acknowledgements - Dr. Barry Demchak and Dr. Trey Ideker - Cytoscape team and Ideker lab - UCSD Health Sciences Going Further - http://www.cytoscape.org/ Cytoscape Website - https://www.github.com/cytoscape-ci/elsa/ Project Elsa - https://www.github.com/ericsage/neoelsa/ Next Version of Elsa