Containers. Pablo F. Ordóñez. October 18, 2018

Size: px
Start display at page:

Download "Containers. Pablo F. Ordóñez. October 18, 2018"

Transcription

1 Containers Pablo F. Ordóñez October 18, Welcome Song: Sola vaya Interpreter: La Sonora Ponceña 2 Goals Containers!= ( Moby-Dick ) Containers are part of the Linux Kernel Make your own container 3 Cgroups tutorial 3.1 Set Server 3.2 Containers Wave Service provision Virtualization Example First Physical boxes Second Virtual machines Hardware VBox VMw KVM Third Containers OS Docker LXD Lxc 3.3 Control Groups Control groups (cgroups) is a kernel feature that limits, accounts for and isolates the CPU, memory, disk I/O and network s usage of one or more processes. The cgroups frameworks provides the following: 3.4 Install Resource limiting: a group can be configured not to exceed a specified memory limit or use more than the desired amount of processors or be limited to specific peripheral devices. Prioritization: one or more groups may be configured to utilize fewer or more CPUs or disk I/O throughput. Accounting: a group s resource usage is monitored and measured. Control: groups of processes can be frozen or stopped and restarted. sudo apt-get -y install cgroup-bin cgroup-lite cgroup-tools cgroupfs-mount libcgroup1 3.5 Testing script create a bash file in ~/bin rm ~/bin/testcgroups.sh touch ~/bin/testcgroups.sh chmod +x ~/bin/testcgroups.sh ll ~/bin/testcgroups.sh Create a mock bash script

2 echo " #!/bin/sh while [ 1 ]; do echo "hello world" sleep 5 done " > ~/bin/testcgroups.sh cat ~/bin/testcgroups.sh 3.6 The manual approach create a cgroup named foo under the memory subsystem sudo mkdir /sys/fs/cgroup/memory/foo Limit the memory for anything running under the cgroup foo to 50MB: echo sudo tee /sys/fs/cgroup/memory/foo/memory.limit_in_bytes sudo cat /sys/fs/cgroup/memory/foo/memory.limit_in_bytes Testing Launch the app and monitoring Move the application to cgroup foo under the memory controller Verify that it s running within the desired cgroup sh ~/bin/testcgroups.sh & newpid=$! ps -U pordonez echo > $newpid /sys/fs/cgroup/memory/foo/cgroup.procs ps -o cgroup $newpid Terminate the process kill $newpid ps -U pordonez 4 Dockerfile tutorial Docker is a platform for developers and sysadmins to develop, deploy, and run applications with containers. Each Dockerfile is a script, composed of various commands (instructions) and arguments listed successively to automatically perform actions on a base image in order to create (or form) a new one Dockerfiles begin with defining an image FROM which the build process starts. Followed by various other methods, commands and arguments (or conditions), in return, provide a new image which is to be used for creating docker containers. 4.1 Syntax Dockerfile syntax consists of two kind of main line blocks: comments and commands + arguments # Print "Hello docker!" RUN echo "Hello docker!" 4.2 Dockerfile Commands ADD Copies the files from the source on the host into the container s own filesystem # Usage: ADD [source directory or URL] [destination directory] ADD /my_app_folder /docker_my_app_folder

3 4.2.2 RUN It takes a command as its argument and runs it to form the image It is used to build the image CMD Similar to RUN It is not executed during build, but when a container is instantiated It should be considered as an initial, default command that gets executed (i.e. run) with the creation of containers based on the image. # Usage 1: CMD application "argument", "argument",.. CMD "echo" "Hello docker!" ENTRYPOINT Set default application that is used every time a container is created ENV Set the environment variables like dictionary (key:value) ENV PATH /opt/conda/bin:$path EXPOSE Associate a specified port to enable networking between the running process inside the container and the outside world # Ipython Jupyter EXPOSE FROM It defines the base image to use to start the build process # Usage: FROM [image name] FROM ubuntu WORKDIR Set where the command defined with CMD is to be executed. 4.3 Example Create and empty Dockerfile cd ~/mydockerfiles pwd if [ -f "Dockerfile" ]; then rm Dockerfile; else touch Dockerfile; fi ll Defining Our File and Its Purpose ############################################################ # Dockerfile to build Pytorch Jupyter container images # Based on Ubuntu ########################################################### " > Dockerfile

4 4.3.3 Setting The Base Image to Use FROM nvidia/cuda:9.0-cudnn7-runtime-ubuntu16.04 cat Dockerfile 1. What s is the base image Dockerfile Cudnn Dockerfile Runtime Dockerfile Base Defining The Maintainer (Author) # File Author / Maintainer MAINTAINER Example Ernesto Rafael Metadata LABEL description="prebuilt jupyter environment" LABEL maintainer=" APP ARG PYTHON_VERSION=3.5 RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \ bzip2 \ cmake \ git \ curl \ vim \ wget \ python3 \ python3-setuptools \ libhdf5-dev \ ca-certificates \ libjpeg-dev \ libpng-dev \ graphviz\ psmisc \ && apt-get -qq clean \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* RUN wget \ -O ~/miniconda.sh --quiet --no-check-certificate && \ chmod +x ~/miniconda.sh && \ ~/miniconda.sh -b -p /opt/conda && \ rm ~/miniconda.sh ENV PATH /opt/conda/bin:$path RUN /opt/conda/bin/conda install -y --quiet python=$python_version \ cython \ ipython \ pyyaml \ mkl \ mkl-include \

5 typing\ h5py \ jupyterlab \ matplotlib \ msgpack-python \ nltk \ numpy \ opencv \ pandas \ protobuf \ pytables \ scipy \ scikit-learn \ scikit-image \ && \ /opt/conda/bin/conda clean --yes --all --quiet RUN /opt/conda/bin/conda install -y --quiet pytorch torchvision -c pytorch && \ /opt/conda/bin/conda clean --yes --all --quiet RUN pip --no-cache-dir install -q --upgrade pip RUN pip --no-cache-dir install -q -U \ tensorflow-gpu \ tensorboardx \ visdom ## Set up our notebook config. COPY jupyter_notebook_config.py /root/.jupyter/ ## Jupyter has issues with being run directly: ## ## We just add a little wrapper script. COPY run_jupyter.sh / COPY ltb /usr/local/bin/ ## Tensorboard EXPOSE 6006 # IPython EXPOSE 8888 WORKDIR /notebooks CMD ["/run_jupyter.sh", "--allow-root"] 4.4 Build docker build -t cu91nnpytorch. 4.5 Run Jupyter nvidia-docker run -it -v ~/Documents/Developer/jupyter/:/notebooks -p 9999:8888 -p 6006:6006 cu91nnpytorch:latest Tensorboardx nvidia-docker run -it cu91nnpytorch:latest /bin/bash tbl Ipython

6 nvidia-docker run -it cu91nnpytorch:latest /bin/bash ipython

An introduction to Docker

An introduction to Docker An introduction to Docker Ing. Vincenzo Maffione Operating Systems Security Container technologies on Linux Several light virtualization technologies are available for Linux They build on cgroups, namespaces

More information

Singularity: container formats

Singularity: container formats Singularity Easy to install and configure Easy to run/use: no daemons no root works with scheduling systems User outside container == user inside container Access to host resources Mount (parts of) filesystems

More information

Docker & why we should use it

Docker & why we should use it Docker & why we should use it Vicențiu Ciorbaru Software Engineer @ MariaDB Foundation * * Agenda What is Docker? What Docker brings to the table compared to KVM and Vagrant? Docker tutorial What is Docker

More information

How to run NoMachine server inside Docker

How to run NoMachine server inside Docker How to run NoMachine server inside Docker Page 1 of 5 Given that Docker is installed on the host machine, to run NoMachine server inside Docker it's enough to build an image from the Dockerfile and launch

More information

DGX-1 DOCKER USER GUIDE Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect

DGX-1 DOCKER USER GUIDE Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect DGX-1 DOCKER USER GUIDE 17.08 Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect AGENDA Introduction to Docker & DGX-1 SW Stack Docker basic & nvidia-docker Docker image

More information

Cross platform enablement for the yocto project with containers. ELC 2017 Randy Witt Intel Open Source Technology Center

Cross platform enablement for the yocto project with containers. ELC 2017 Randy Witt Intel Open Source Technology Center Cross platform enablement for the yocto project with containers ELC 2017 Randy Witt Intel Open Source Technology Center My personal problems Why d I even do this? THE multiple distro Problem Yocto Project

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Kisik Jeong (kisik@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating

More information

Anaconda Python Distribution

Anaconda Python Distribution Anaconda Python Distribution Introduction Usage Useful Commands Installation Extra Notes Dry Run Create an environment Installed Environment Useful commands Sample PBS file Activate an environment De-Activate

More information

docker & HEP: containerization of applications for development, distribution and preservation

docker & HEP: containerization of applications for development, distribution and preservation docker & HEP: containerization of applications for development, distribution and preservation Sébastien Binet LAL/IN2P3 2015-04-13 S. Binet (LAL) docker-hep 2015-04-13 1 / 16 Docker: what is it? http://www.docker.io/

More information

Arup Nanda VP, Data Services Priceline.com

Arup Nanda VP, Data Services Priceline.com Jumpstarting Docker Arup Nanda VP, Data Services Priceline.com My application worked in Dev but not in QA Will it work in production? I need an environment right now No, I can t wait for 2 weeks I just

More information

Introduction to containers

Introduction to containers Introduction to containers Nabil Abdennadher nabil.abdennadher@hesge.ch 1 Plan Introduction Details : chroot, control groups, namespaces My first container Deploying a distributed application using containers

More information

Travis Cardwell Technical Meeting

Travis Cardwell Technical Meeting .. Introduction to Docker Travis Cardwell Tokyo Linux Users Group 2014-01-18 Technical Meeting Presentation Motivation OS-level virtualization is becoming accessible Docker makes it very easy to experiment

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Dong-Yun Lee (dylee@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating

More information

swiftenv Documentation

swiftenv Documentation swiftenv Documentation Release 1.3.0 Kyle Fuller Sep 27, 2017 Contents 1 The User Guide 3 1.1 Installation................................................ 3 1.2 Getting Started..............................................

More information

Introduction to Linux. Woo-Yeong Jeong Computer Systems Laboratory Sungkyunkwan University

Introduction to Linux. Woo-Yeong Jeong Computer Systems Laboratory Sungkyunkwan University Introduction to Linux Woo-Yeong Jeong (wooyeong@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating system of a computer What is an

More information

Contents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version...

Contents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version... Contents Note: pay attention to where you are........................................... 1 Note: Plaintext version................................................... 1 Hello World of the Bash shell 2 Accessing

More information

Introduction to Containers

Introduction to Containers Introduction to Containers Shawfeng Dong Principal Cyberinfrastructure Engineer University of California, Santa Cruz What are Containers? Containerization, aka operating-system-level virtualization, refers

More information

Optimizing Docker Images

Optimizing Docker Images Optimizing Docker Images Brian DeHamer - CenturyLink Labs bdehamer CenturyLinkLabs @bdehamer @centurylinklabs Overview Images & Layers Minimizing Image Size Leveraging the Image Cache Dockerfile Tips

More information

Index. Bessel function, 51 Big data, 1. Cloud-based version-control system, 226 Containerization, 30 application, 32 virtualize processes, 30 31

Index. Bessel function, 51 Big data, 1. Cloud-based version-control system, 226 Containerization, 30 application, 32 virtualize processes, 30 31 Index A Amazon Web Services (AWS), 2 account creation, 2 EC2 instance creation, 9 Docker, 13 IP address, 12 key pair, 12 launch button, 11 security group, 11 stable Ubuntu server, 9 t2.micro type, 9 10

More information

MAKING CONTAINERS EASIER WITH HPC CONTAINER MAKER. Scott McMillan September 2018

MAKING CONTAINERS EASIER WITH HPC CONTAINER MAKER. Scott McMillan September 2018 MAKING CONTAINERS EASIER WITH HPC CONTAINER MAKER Scott McMillan September 2018 NVIDIA GPU CLOUD (NGC) Simple Access to Ready to-run, GPU-Accelerated Software Discover 35 GPU-Accelerated Containers Deep

More information

Network softwarization Lab session 2: OS Virtualization Networking

Network softwarization Lab session 2: OS Virtualization Networking Network softwarization Lab session 2: OS Virtualization Networking Nicolas Herbaut David Bourasseau Daniel Negru December 16, 2015 1 Introduction 1.1 Discovering docker 1.1.1 Installation Please launch

More information

KNIME Python Integration Installation Guide. KNIME AG, Zurich, Switzerland Version 3.7 (last updated on )

KNIME Python Integration Installation Guide. KNIME AG, Zurich, Switzerland Version 3.7 (last updated on ) KNIME Python Integration Installation Guide KNIME AG, Zurich, Switzerland Version 3.7 (last updated on 2019-02-05) Table of Contents Introduction.....................................................................

More information

Be smart. Think open source.

Be smart. Think open source. Dockerfiles Be smart. Think open source. Dockerfiles What is a Dockerfile? Build instructions for Docker images Each command creates a layer in the image FROM centos:7 LABEL maintainer="foo.bar@example.com"

More information

FEniCS Containers Documentation

FEniCS Containers Documentation FEniCS Containers Documentation Release 1.0 FEniCS Project Jan 29, 2018 Contents 1 Quickstart 3 2 Introduction 5 2.1 What is Docker?............................................. 5 2.2 Installing Docker.............................................

More information

Dockerfile Best Practices

Dockerfile Best Practices Dockerfile Best Practices OpenRheinRuhr 2015 November 07th, 2015 1 Dockerfile Best Practices Outline About Dockerfile Best Practices Building Images This work is licensed under the Creative Commons Attribution-ShareAlike

More information

Investigating Containers for Future Services and User Application Support

Investigating Containers for Future Services and User Application Support Investigating Containers for Future Services and User Application Support JLAB CNI NLIT 2018 () Overview JLAB scope What is a container? Why are we interested? Platform-as-a-Service (PaaS) for orchestration

More information

Container-based virtualization: Docker

Container-based virtualization: Docker Università degli Studi di Roma Tor Vergata Dipartimento di Ingegneria Civile e Ingegneria Informatica Container-based virtualization: Docker Corso di Sistemi Distribuiti e Cloud Computing A.A. 2018/19

More information

Homework 01 : Deep learning Tutorial

Homework 01 : Deep learning Tutorial Homework 01 : Deep learning Tutorial Introduction to TensorFlow and MLP 1. Introduction You are going to install TensorFlow as a tutorial of deep learning implementation. This instruction will provide

More information

Docker und IBM Digital Experience in Docker Container

Docker und IBM Digital Experience in Docker Container Docker und IBM Digital Experience in Docker Container 20. 21. Juni 2017 IBM Labor Böblingen 1 What is docker Introduction VMs vs. containers Terminology v Docker components 2 6/22/2017 What is docker?

More information

Implementing DPDK based Application Container Framework with SPP YASUFUMI OGAWA, NTT

Implementing DPDK based Application Container Framework with SPP YASUFUMI OGAWA, NTT x Implementing DPDK based Application Container Framework with SPP YASUFUMI OGAWA, NTT Agenda Introduction of SPP SPP Container Containerize DPDK Apps SPP Container Tools Usecases Limitations and Restrictions

More information

DEPLOYMENT MADE EASY!

DEPLOYMENT MADE EASY! DEPLOYMENT MADE EASY! Presented by Hunde Keba & Ashish Pagar 1 DSFederal Inc. We provide solutions to Federal Agencies Our technology solutions connect customers to the people they serve 2 Necessity is

More information

Platform Migrator Technical Report TR

Platform Migrator Technical Report TR Platform Migrator Technical Report TR2018-990 Munir Contractor mmc691@nyu.edu Christophe Pradal christophe.pradal@inria.fr Dennis Shasha shasha@cs.nyu.edu May 12, 2018 CONTENTS: 1 Abstract 4 2 Platform

More information

Technical Manual(TM)

Technical Manual(TM) Technical Manual(TM) Image Processing Platform Team04 Name First Role Second Role Third Role Hao Wu Requirements Engineer Software Architect Implementer Junran Liu Operational Concept Engineer Software

More information

Engineering Robust Server Software

Engineering Robust Server Software Engineering Robust Server Software Containers Isolation Isolation: keep different programs separate Good for security Might also consider performance isolation Also has security implications (side channel

More information

Introduction to UNIX I: Command Line 1 / 21

Introduction to UNIX I: Command Line 1 / 21 Introduction to UNIX I: Command Line 1 / 21 UNIX Command line The UNIX Shell: command line interface Navigating Directories and Files Running applications Reminder about helpful tutorial: http://korflab.ucdavis.edu/unix_and_perl/current.html

More information

Preparing Your Google Cloud VM for W4705

Preparing Your Google Cloud VM for W4705 Preparing Your Google Cloud VM for W4705 August 27, 2017 1. Get a cloud.cs.columbia.edu account 1. Sign up for a cloud Columbia CS account using this link. Note that is is an entirely new account and is

More information

EE516: Embedded Software Project 1. Setting Up Environment for Projects

EE516: Embedded Software Project 1. Setting Up Environment for Projects EE516: Embedded Software Project 1. Setting Up Environment for Projects By Dong Jae Shin 2015. 09. 01. Contents Introduction to Projects of EE516 Tasks Setting Up Environment Virtual Machine Environment

More information

Red Hat Containers Cheat Sheet

Red Hat Containers Cheat Sheet Red Hat Containers Cheat Sheet Table of Contents Introduction Commands Key 1. Container Runtime Engine 1.A) Container Related Commands 1.B) Image Related Commands 1.C) Network Related Commands 1.D) Registry

More information

Docker Cheat Sheet. Introduction

Docker Cheat Sheet. Introduction Docker Cheat Sheet Introduction Containers allow the packaging of your application (and everything that you need to run it) in a "container image". Inside a container you can include a base operational

More information

Support for Vanilla Universe Checkpointing. Thomas Downes University of Wisconsin-Milwaukee (LIGO)

Support for Vanilla Universe Checkpointing. Thomas Downes University of Wisconsin-Milwaukee (LIGO) Support for Vanilla Universe Checkpointing Thomas Downes University of Wisconsin-Milwaukee (LIGO) Experimental feature! All features discussed are present in the official 8.5 releases. The Morgridge Institute

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA Sanghoon Han(sanghoon.han@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Announcement (1) Please come

More information

GNU/Linux 101. Casey McLaughlin. Research Computing Center Spring Workshop Series 2018

GNU/Linux 101. Casey McLaughlin. Research Computing Center Spring Workshop Series 2018 GNU/Linux 101 Casey McLaughlin Research Computing Center Spring Workshop Series 2018 rccworkshop IC;3df4mu bash-2.1~# man workshop Linux101 RCC Workshop L101 OBJECTIVES - Operating system concepts - Linux

More information

USING NGC WITH GOOGLE CLOUD PLATFORM

USING NGC WITH GOOGLE CLOUD PLATFORM USING NGC WITH GOOGLE CLOUD PLATFORM DU-08962-001 _v02 April 2018 Setup Guide TABLE OF CONTENTS Chapter 1. Introduction to... 1 Chapter 2. Deploying an NVIDIA GPU Cloud Image from the GCP Console...3 2.1.

More information

Linux Systems Administration Getting Started with Linux

Linux Systems Administration Getting Started with Linux Linux Systems Administration Getting Started with Linux Network Startup Resource Center www.nsrc.org These materials are licensed under the Creative Commons Attribution-NonCommercial 4.0 International

More information

Linux Essentials Objectives Topics:

Linux Essentials Objectives Topics: Linux Essentials Linux Essentials is a professional development certificate program that covers basic knowledge for those working and studying Open Source and various distributions of Linux. Exam Objectives

More information

Neural Network Compiler BNN Scripts User Guide

Neural Network Compiler BNN Scripts User Guide FPGA-UG-02055 Version 1.0 May 2018 Contents 1. Introduction... 3 2. Software Requirements... 3 3. Directory Structure... 3 4. Installation Guide... 4 4.1. Installing Dependencies... 4 4.2. Installing Packages...

More information

Dockerfile & docker CLI Cheat Sheet

Dockerfile & docker CLI Cheat Sheet Dockerfile & docker CLI Cheat Sheet Table of Contents Introduction 1 1. docker CLI Engine 2 1.1 Container Related s 2 1.2 Image Related s 4 1.3 Network Related s 5 1.4 Registry Related s 6 1.5 Volume Related

More information

CS234 Azure Step-by-Step Setup

CS234 Azure Step-by-Step Setup CS234 Azure Step-by-Step Setup Adapted from the setup instructions for Chris Manning s 2017 offering of CS224n Key-Points This guide will walk you through running your code on GPUs in Azure. Before we

More information

Chris Calloway for Triangle Python Users Group at Caktus Group December 14, 2017

Chris Calloway for Triangle Python Users Group at Caktus Group December 14, 2017 Chris Calloway for Triangle Python Users Group at Caktus Group December 14, 2017 What Is Conda Cross-platform Language Agnostic Package Manager Dependency Manager Environment Manager Package Creator Command

More information

Introduction to remote command line Linux. Research Computing Team University of Birmingham

Introduction to remote command line Linux. Research Computing Team University of Birmingham Introduction to remote command line Linux Research Computing Team University of Birmingham Linux/UNIX/BSD/OSX/what? v All different v UNIX is the oldest, mostly now commercial only in large environments

More information

Guillimin HPC Users Meeting December 14, 2017

Guillimin HPC Users Meeting December 14, 2017 Guillimin HPC Users Meeting December 14, 2017 guillimin@calculquebec.ca McGill University / Calcul Québec / Compute Canada Montréal, QC Canada Please be kind to your fellow user meeting attendees Limit

More information

INTRODUCTION TO LINUX

INTRODUCTION TO LINUX INTRODUCTION TO LINUX REALLY SHORT HISTORY Before GNU/Linux there were DOS, MAC and UNIX. All systems were proprietary. The GNU project started in the early 80s by Richard Stallman Goal to make a free

More information

Zephyr Kernel Installation & Setup Manual

Zephyr Kernel Installation & Setup Manual Zephyr Kernel Installation & Setup Manual Zephyr kernel is a small footprint Single address space OS, i.e, it combines application specific code with a custom kernel to create a monolithic image that gets

More information

INFRASTRUCTURE AS CODE

INFRASTRUCTURE AS CODE INFRASTRUCTURE AS CODE David Sherman EQUIPE PLEIADE BORDEAUX SUD-OUEST 2016-11-08 2016-11-08-22 Pets versus Cattle 2016-11-08-23 Pets versus Cattle (or sheep) https://vimeo.com/4486963 2016-11-08-24 Infrastructure

More information

Deploying Rails with Kubernetes

Deploying Rails with Kubernetes Deploying Rails with Kubernetes AWS Edition Pablo Acuña This book is for sale at http://leanpub.com/deploying-rails-with-kubernetes This version was published on 2016-05-21 This is a Leanpub book. Leanpub

More information

Bash, In A NutShell RUSTY MYERS - SYSTEMS ADMINISTRATOR, PENN STATE CHRIS LAWSON - IT CONSULTANT/SUPPORT SPECIALIST, PENN STATE ALTOONA

Bash, In A NutShell RUSTY MYERS - SYSTEMS ADMINISTRATOR, PENN STATE CHRIS LAWSON - IT CONSULTANT/SUPPORT SPECIALIST, PENN STATE ALTOONA Bash, In A NutShell RUSTY MYERS - SYSTEMS ADMINISTRATOR, PENN STATE CHRIS LAWSON - IT CONSULTANT/SUPPORT SPECIALIST, PENN STATE ALTOONA BASH, IN A NUTSHELL What is bash? Brian Fox 1989 Bourne Again Shell

More information

The TinyHPC Cluster. Mukarram Ahmad. Abstract

The TinyHPC Cluster. Mukarram Ahmad. Abstract The TinyHPC Cluster Mukarram Ahmad Abstract TinyHPC is a beowulf class high performance computing cluster with a minor physical footprint yet significant computational capacity. The system is of the shared

More information

Outline. Cgroup hierarchies

Outline. Cgroup hierarchies Outline 4 Cgroups 4-1 4.1 Introduction 4-3 4.2 Cgroups v1: hierarchies and controllers 4-16 4.3 Cgroups v1: populating a cgroup 4-24 4.4 Cgroups v1: a survey of the controllers 4-38 4.5 Cgroups /proc files

More information

USING DOCKER FOR MXCUBE DEVELOPMENT AT MAX IV

USING DOCKER FOR MXCUBE DEVELOPMENT AT MAX IV USING DOCKER FOR MXCUBE DEVELOPMENT AT MAX IV Fredrik Bolmsten, Antonio Milán Otero K.I.T.S. Group at Max IV - 2017 1 OVERVIEW What is Docker? How does it work? How we use it for MxCUBE How to create a

More information

LING 408/508: Computational Techniques for Linguists. Lecture 5

LING 408/508: Computational Techniques for Linguists. Lecture 5 LING 408/508: Computational Techniques for Linguists Lecture 5 Last Time Installing Ubuntu 18.04 LTS on top of VirtualBox Your Homework 2: did everyone succeed? Ubuntu VirtualBox Host OS: MacOS or Windows

More information

Getting Started With Containers

Getting Started With Containers DEVNET 2042 Getting Started With Containers Matt Johnson Developer Evangelist @mattdashj Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session

More information

More Raspian. An editor Configuration files Shell scripts Shell variables System admin

More Raspian. An editor Configuration files Shell scripts Shell variables System admin More Raspian An editor Configuration files Shell scripts Shell variables System admin Nano, a simple editor Nano does not require the mouse. You must use your keyboard to move around the file and make

More information

Chapter Two. Lesson A. Objectives. Exploring the UNIX File System and File Security. Understanding Files and Directories

Chapter Two. Lesson A. Objectives. Exploring the UNIX File System and File Security. Understanding Files and Directories Chapter Two Exploring the UNIX File System and File Security Lesson A Understanding Files and Directories 2 Objectives Discuss and explain the UNIX file system Define a UNIX file system partition Use the

More information

Linux Operating System Environment Computadors Grau en Ciència i Enginyeria de Dades Q2

Linux Operating System Environment Computadors Grau en Ciència i Enginyeria de Dades Q2 Linux Operating System Environment Computadors Grau en Ciència i Enginyeria de Dades 2017-2018 Q2 Facultat d Informàtica de Barcelona This first lab session is focused on getting experience in working

More information

Cloud Computing with APL. Morten Kromberg, CXO, Dyalog

Cloud Computing with APL. Morten Kromberg, CXO, Dyalog Cloud Computing with APL Morten Kromberg, CXO, Dyalog Cloud Computing Docker with APL Morten Kromberg, CXO, Dyalog 2 Cloud Computing: Definitions 3 Cloud Computing: Definitions Cloud Computing = "Using

More information

Intel Distribution for Python* 2018 Beta

Intel Distribution for Python* 2018 Beta Intel Distribution for Python* 2018 Beta Release Notes 27 March 2017 Version History/Revision History Date Revision Description March 2017 1.0 Release Notes for the Intel Distribution for Python* 2018

More information

How to set Caffe up and running SegNet from scratch in OSX El Capitan using CPU mode

How to set Caffe up and running SegNet from scratch in OSX El Capitan using CPU mode How to set Caffe up and running SegNet from scratch in OSX El Capitan using CPU mode Written by : Sirawat Pitaksarit Probably can be applied to Ubuntu system, but all the brew commands needs to be replaced

More information

Outline. Cgroup hierarchies

Outline. Cgroup hierarchies Outline 15 Cgroups 15-1 15.1 Introduction to cgroups v1 and v2 15-3 15.2 Cgroups v1: hierarchies and controllers 15-17 15.3 Cgroups v1: populating a cgroup 15-24 15.4 Cgroups v1: a survey of the controllers

More information

Lec 1 add-on: Linux Intro

Lec 1 add-on: Linux Intro Lec 1 add-on: Linux Intro Readings: - Unix Power Tools, Powers et al., O Reilly - Linux in a Nutshell, Siever et al., O Reilly Summary: - Linux File System - Users and Groups - Shell - Text Editors - Misc

More information

GPU Cluster Usage Tutorial

GPU Cluster Usage Tutorial GPU Cluster Usage Tutorial How to make caffe and enjoy tensorflow on Torque 2016 11 12 Yunfeng Wang 1 PBS and Torque PBS: Portable Batch System, computer software that performs job scheduling versions

More information

Scientific Filesystem. Vanessa Sochat

Scientific Filesystem. Vanessa Sochat Scientific Filesystem Vanessa Sochat vsochat@stanford.edu 1 Welcome! 2 Welcome! 3 Let s all be friends! 5 Once upon a time There was a scientist Foo Bar foo bar e c n e sci + 12 Pipeline foobar foo

More information

Linux. An introduction. Aurélien Villani 01/2018

Linux. An introduction. Aurélien Villani 01/2018 Linux An introduction Aurélien Villani 01/2018 Linux? 2 References Somewhere on the baie-lgf, are some Linux books. 3 Linux? A kernel... 1991: released by Linus Torvalds, for fun 1993: 100 developers working

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer i About the Tutorial Project is a comprehensive software suite for interactive computing, that includes various packages such as Notebook, QtConsole, nbviewer, Lab. This tutorial gives you an exhaustive

More information

Infrastructure Security 2.0

Infrastructure Security 2.0 Infrastructure Security 2.0 $ whoami Infrastructure Security Engineer @ Shopify Certified Kubernetes Administrator twitter.com/jonpulsifer github.com/jonpulsifer Previously Team Lead at CFNOC Network Defense

More information

CONTAINERIZING JOBS ON THE ACCRE CLUSTER WITH SINGULARITY

CONTAINERIZING JOBS ON THE ACCRE CLUSTER WITH SINGULARITY CONTAINERIZING JOBS ON THE ACCRE CLUSTER WITH SINGULARITY VIRTUAL MACHINE (VM) Uses so&ware to emulate an en/re computer, including both hardware and so&ware. Host Computer Virtual Machine Host Resources:

More information

NGC CONTAINER. DU _v02 November User Guide

NGC CONTAINER. DU _v02 November User Guide NGC CONTAINER DU-08812-001_v02 November 2017 User Guide TABLE OF CONTENTS Chapter 1. Docker Containers... 1 1.1. What Is A Docker Container?... 1 1.2. Why Use A Container?... 2 Chapter 2. Prerequisites...3

More information

Andrej Filipčič

Andrej Filipčič Singularity@SiGNET Andrej Filipčič SiGNET 4.5k cores, 3PB storage, 4.8.17 kernel on WNs and Gentoo host OS 2 ARC-CEs with 700TB cephfs ARC cache and 3 data delivery nodes for input/output file staging

More information

The Unix Shell & Shell Scripts

The Unix Shell & Shell Scripts The Unix Shell & Shell Scripts You should do steps 1 to 7 before going to the lab. Use the Linux system you installed in the previous lab. In the lab do step 8, the TA may give you additional exercises

More information

MYR-2017 SimulATOR user manual

MYR-2017 SimulATOR user manual MYR-2017 SimulATOR user manual Naïo technologies - Gazebo on Nvidia-Docker - Author : Andreu Joan Version : 1.0.0 Date : 2017/07/11 Copyright : Naïo Technologies 1. Requirements Minimal requirements :

More information

Docker A FRAMEWORK FOR DATA INTENSIVE COMPUTING

Docker A FRAMEWORK FOR DATA INTENSIVE COMPUTING Docker A FRAMEWORK FOR DATA INTENSIVE COMPUTING Agenda Intro / Prep Environments Day 1: Docker Deep Dive Day 2: Kubernetes Deep Dive Day 3: Advanced Kubernetes: Concepts, Management, Middleware Day 4:

More information

Who is Docker and how he can help us? Heino Talvik

Who is Docker and how he can help us? Heino Talvik Who is Docker and how he can help us? Heino Talvik heino.talvik@seb.ee heino.talvik@gmail.com What is Docker? Software guy view: Marriage of infrastucture and Source Code Management Hardware guy view:

More information

Introduction Into Linux Lecture 1 Johannes Werner WS 2017

Introduction Into Linux Lecture 1 Johannes Werner WS 2017 Introduction Into Linux Lecture 1 Johannes Werner WS 2017 Table of contents Introduction Operating systems Command line Programming Take home messages Introduction Lecturers Johannes Werner (j.werner@dkfz-heidelberg.de)

More information

Hands-on Keyboard: Cyber Experiments for Strategists and Policy Makers

Hands-on Keyboard: Cyber Experiments for Strategists and Policy Makers Hands-on Keyboard: Cyber Experiments for Strategists and Policy Makers Review of the Linux File System and Linux Commands 1. Introduction Becoming adept at using the Linux OS requires gaining familiarity

More information

3/8/2017. Unix/Linux Introduction. In this part, we introduce. What does an OS do? Examples

3/8/2017. Unix/Linux Introduction. In this part, we introduce. What does an OS do? Examples EECS2301 Title Unix/Linux Introduction These slides are based on slides by Prof. Wolfgang Stuerzlinger at York University Warning: These notes are not complete, it is a Skelton that will be modified/add-to

More information

Introduction of Linux

Introduction of Linux Introduction of Linux 阳 oslab2018_class1@163.com 寅 oslab2018_class2@163.com PART I Brief Introduction Basic Conceptions & Environment Install & Configure a Virtual Machine Basic Commands PART II Shell

More information

Rover Documentation Tracing with Perf, Conversion to CTF, and analysis with TraceCompass

Rover Documentation Tracing with Perf, Conversion to CTF, and analysis with TraceCompass Rover Documentation Tracing with Perf, Conversion to CTF, and analysis with TraceCompass Version Implementation Supervision & revision June 7, 207 Mustafa O zceliko rs Robert Ho ttger mozcelikors@gmail.com

More information

Linux for Beginners. Windows users should download putty or bitvise:

Linux for Beginners. Windows users should download putty or bitvise: Linux for Beginners Windows users should download putty or bitvise: https://putty.org/ Brief History UNIX (1969) written in PDP-7 assembly, not portable, and designed for programmers as a reaction by Bell

More information

Php Scripts If Then Else Linux Bash Shell

Php Scripts If Then Else Linux Bash Shell Php Scripts If Then Else Linux Bash Shell I am using awk as part of and if then else statement. KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and shell scripts and shell scripting languages here. I just wrote

More information

UNIX System Programming Lecture 3: BASH Programming

UNIX System Programming Lecture 3: BASH Programming UNIX System Programming Outline Filesystems Redirection Shell Programming Reference BLP: Chapter 2 BFAQ: Bash FAQ BMAN: Bash man page BPRI: Bash Programming Introduction BABS: Advanced Bash Scripting Guide

More information

Manual Shell Script Linux If Not Exist Directory Does

Manual Shell Script Linux If Not Exist Directory Does Manual Shell Script Linux If Not Exist Directory Does Bash can be configured to be POSIX-confor mant by default. and then a much longer manual available using info (usually they refer to the info page

More information

Perl and R Scripting for Biologists

Perl and R Scripting for Biologists Perl and R Scripting for Biologists Lukas Mueller PLBR 4092 Course overview Linux basics (today) Linux advanced (Aure, next week) Why Linux? Free open source operating system based on UNIX specifications

More information

Recap From Last Time:

Recap From Last Time: Recap From Last Time: BGGN 213 Working with UNIX Barry Grant http://thegrantlab.org/bggn213 Motivation: Why we use UNIX for bioinformatics. Modularity, Programmability, Infrastructure, Reliability and

More information

Remote Workflow Enactment using Docker and the Generic Execution Framework in EUDAT

Remote Workflow Enactment using Docker and the Generic Execution Framework in EUDAT Remote Workflow Enactment using Docker and the Generic Execution Framework in EUDAT Asela Rajapakse Max Planck Institute for Meteorology EUDAT receives funding from the European Union's Horizon 2020 programme

More information

Blockchain on Kubernetes

Blockchain on Kubernetes Blockchain on Kubernetes By VMware Introduction Blockchain is an emerging technology which has been gaining traction globally during the past few years. Industries like finance, logistics, IoT, are actively

More information

Code: Slides:

Code:   Slides: Workshop Resources Code: https://github.com/beekpr/public-workshops Slides: https://tinyurl.com/yc2uo3wk Make sure minikube and kubectl is setup (labs/1-setup-cluster.md has some instructions) Kubernetes

More information

BGGN 213 Working with UNIX Barry Grant

BGGN 213 Working with UNIX Barry Grant BGGN 213 Working with UNIX Barry Grant http://thegrantlab.org/bggn213 Recap From Last Time: Motivation: Why we use UNIX for bioinformatics. Modularity, Programmability, Infrastructure, Reliability and

More information

Docker 101 Workshop. Eric Smalling - Solution Architect, Docker

Docker 101 Workshop. Eric Smalling - Solution Architect, Docker Docker 101 Workshop Eric Smalling - Solution Architect, Docker Inc. @ericsmalling Who Am I? Eric Smalling Solution Architect Docker Customer Success Team ~25 years in software development, architecture,

More information

Introduction to Python. Didzis Gosko

Introduction to Python. Didzis Gosko Introduction to Python Didzis Gosko Scripting language From Wikipedia: A scripting language or script language is a programming language that supports scripts, programs written for a special run-time environment

More information

Introduction To. Barry Grant

Introduction To. Barry Grant Introduction To Barry Grant bjgrant@umich.edu http://thegrantlab.org Working with Unix How do we actually use Unix? Inspecting text files less - visualize a text file: use arrow keys page down/page up

More information

Big Data Exercises. Fall 2016 Week 0 ETH Zurich

Big Data Exercises. Fall 2016 Week 0 ETH Zurich Big Data Exercises Fall 2016 Week 0 ETH Zurich 1. Jupyter Basics Welcome to this Jupyter notebook. Jupyter is a web-based open-source tool based on Python that allows you to run python (and other types

More information