Ryan Koop's Docker Chicago Meetup Demo March 12 2014Cohesive Networks
CohesiveFT's Director of Products & Marketing, Ryan Koop, presented on how CohesiveFT is incorporating Docker containers in our latest version of the virtual networking appliance, VNS3.
Docker Meetup #2 was held on March 12, 2014 at Mediafly
AppSec USA 2014 talk by Chris Swan "Implications & Opportunities at the Bleed...Cohesive Networks
AppSec USA 2014 from Cohesive CTO Chris Swan
"Implications & Opportunities at the Bleeding Edge of DevOps"
Ever Onward… as DevOps keeps evolving, this session will show you how the newest DevOps patterns and technologies (e.g. Docker) trends continue to change and morph the opportunities and risks for security. It’s more exciting than scary… once you get over the shock
Distro Recipes 2013 : Make Debian and compiler agnostic Anne Nicolas
The document discusses making the Debian operating system compiler agnostic by rebuilding it using Clang instead of just GCC. Currently Debian uses GCC to build all C/C++/Objective-C sources. Rebuilding with Clang could find additional programming errors and make the code more portable. Clang is an alternative compiler based on LLVM that is gaining popularity and has some advantages over GCC like better error detection. An experiment rebuilding Debian packages with Clang showed around 8-12% failed to build initially, demonstrating the work remaining to fully transition.
What's new in Kubernetes 1.3?
New things like:
Petsets, init-containers, ubernetes, federated clusters, improved kubernetes UI, minikube, support for rkt, etc.
Also find out sources to learn Kubernetes, how to participate with k8s community.
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery called pods. Replication controllers help maintain a desired number of pods running while services define a logical set of pods and a policy by which to access them.
One might find it ironic that some of the world's fastest supercomputers -- vast clusters capable of trillions of floating point operations per second -- can take upwards of a half an hour to reboot in between jobs. While we often talk about the density advantages of containers, it's the opposite approach that we use in the High Performance Computing world! Here, we use exactly 1 system container per node, giving it unlimited access to all of the host's CPU, Memory, Disk, IO, and Network. And yet we can still leverage the management characteristics of containers -- security, snapshots, live migration, and instant deployment to recycle each node in between jobs. In this talk, we'll examine a reference architecture and some best practices around containers in HPC environments.
Kubernetes is a container orchestrator platform, not the docker platform. It means we can switch to a different container solutions in the Kubernetes environment and the key point is the CRI, container runtime intface. We will talked about what is the CRI and how to use it in the Kubernetes world, we also introduce what is the OCI, the basic concept of the OCI, inclduing Runtime spec and Image spec.
Chris Swan ONUG Academy - Container Networks TutorialCohesive Networks
Slides from Chris Swan's ONUG Academy "Hands-On Container Networks" on May 12, 2015
This hands on session will begin by looking at how Docker modifies a Linux host to enable containers to be connected to a network. It will then go through how applications running in containers can be connected together, and the different options for interconnectivity on a host and between hosts. Finally we will take a look at running network application services inside of containers.
Syllabus
Learn what Docker does to your Linux host on installation.
Connect applications running across multiple containers using configuration metadata and compositing tools.
Understand the different Docker networking modes (host, container, none).
Using Pipework to customise network configuration.
Connecting containers across VMs using Open vSwitch.
Using containers for application network services sush as proxies, load balancers and for TLS termination
Learning Objective 1: Understand how containers relate to the host network, and the consequences that has for services running within containers
Learning Objective 2: Understand the different ways that containers can be networked and internetworked.
Learning Objective 3: Use containers to run network application services.
About the topic:
Containers aren’t a new thing, but the Docker project has made them a hot topic as organisations look at new ways to build, ship and run their applications. This brings new challenges for the network as containers are likely to be ten times as numerous as virtual machines. At the same time there is regulatory pressure to move away from the flat LAN model and deliver greater separation and segregation. This presentation will look at how these two forces are coming together, firstly by examining how containers are networked and some of the new approaches and challenges that come with that. This will be followed by a look at how overlay networks are being deployed to achieve ‘microsegmentation’, and ultimately drive a shift towards application centric networking. Of course these forces will collide, bringing us to contained networks of containers.
Ryan Koop's Docker Chicago Meetup Demo March 12 2014Cohesive Networks
CohesiveFT's Director of Products & Marketing, Ryan Koop, presented on how CohesiveFT is incorporating Docker containers in our latest version of the virtual networking appliance, VNS3.
Docker Meetup #2 was held on March 12, 2014 at Mediafly
AppSec USA 2014 talk by Chris Swan "Implications & Opportunities at the Bleed...Cohesive Networks
AppSec USA 2014 from Cohesive CTO Chris Swan
"Implications & Opportunities at the Bleeding Edge of DevOps"
Ever Onward… as DevOps keeps evolving, this session will show you how the newest DevOps patterns and technologies (e.g. Docker) trends continue to change and morph the opportunities and risks for security. It’s more exciting than scary… once you get over the shock
Distro Recipes 2013 : Make Debian and compiler agnostic Anne Nicolas
The document discusses making the Debian operating system compiler agnostic by rebuilding it using Clang instead of just GCC. Currently Debian uses GCC to build all C/C++/Objective-C sources. Rebuilding with Clang could find additional programming errors and make the code more portable. Clang is an alternative compiler based on LLVM that is gaining popularity and has some advantages over GCC like better error detection. An experiment rebuilding Debian packages with Clang showed around 8-12% failed to build initially, demonstrating the work remaining to fully transition.
What's new in Kubernetes 1.3?
New things like:
Petsets, init-containers, ubernetes, federated clusters, improved kubernetes UI, minikube, support for rkt, etc.
Also find out sources to learn Kubernetes, how to participate with k8s community.
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery called pods. Replication controllers help maintain a desired number of pods running while services define a logical set of pods and a policy by which to access them.
One might find it ironic that some of the world's fastest supercomputers -- vast clusters capable of trillions of floating point operations per second -- can take upwards of a half an hour to reboot in between jobs. While we often talk about the density advantages of containers, it's the opposite approach that we use in the High Performance Computing world! Here, we use exactly 1 system container per node, giving it unlimited access to all of the host's CPU, Memory, Disk, IO, and Network. And yet we can still leverage the management characteristics of containers -- security, snapshots, live migration, and instant deployment to recycle each node in between jobs. In this talk, we'll examine a reference architecture and some best practices around containers in HPC environments.
Kubernetes is a container orchestrator platform, not the docker platform. It means we can switch to a different container solutions in the Kubernetes environment and the key point is the CRI, container runtime intface. We will talked about what is the CRI and how to use it in the Kubernetes world, we also introduce what is the OCI, the basic concept of the OCI, inclduing Runtime spec and Image spec.
Chris Swan ONUG Academy - Container Networks TutorialCohesive Networks
Slides from Chris Swan's ONUG Academy "Hands-On Container Networks" on May 12, 2015
This hands on session will begin by looking at how Docker modifies a Linux host to enable containers to be connected to a network. It will then go through how applications running in containers can be connected together, and the different options for interconnectivity on a host and between hosts. Finally we will take a look at running network application services inside of containers.
Syllabus
Learn what Docker does to your Linux host on installation.
Connect applications running across multiple containers using configuration metadata and compositing tools.
Understand the different Docker networking modes (host, container, none).
Using Pipework to customise network configuration.
Connecting containers across VMs using Open vSwitch.
Using containers for application network services sush as proxies, load balancers and for TLS termination
Learning Objective 1: Understand how containers relate to the host network, and the consequences that has for services running within containers
Learning Objective 2: Understand the different ways that containers can be networked and internetworked.
Learning Objective 3: Use containers to run network application services.
About the topic:
Containers aren’t a new thing, but the Docker project has made them a hot topic as organisations look at new ways to build, ship and run their applications. This brings new challenges for the network as containers are likely to be ten times as numerous as virtual machines. At the same time there is regulatory pressure to move away from the flat LAN model and deliver greater separation and segregation. This presentation will look at how these two forces are coming together, firstly by examining how containers are networked and some of the new approaches and challenges that come with that. This will be followed by a look at how overlay networks are being deployed to achieve ‘microsegmentation’, and ultimately drive a shift towards application centric networking. Of course these forces will collide, bringing us to contained networks of containers.
Distro Recipes 2013 : Upstream management and consequences on the distributi...Anne Nicolas
This document discusses ulogd, a utility for logging network packets captured by Netfilter. It begins with background on early packet logging using syslog before ulogd was introduced. Ulogd allows packet logging via a netlink socket and userspace daemon. The document outlines ulogd's history and dependencies, issues with developer and distribution support, and concludes by providing contact information.
Docker has developed rapidly in the past year. It started as a simple tool used to package applications into containers using LXC but has since replaced LXC with its own containerization technology. Major releases introduced compatibility with mainstream Linux distributions, a regular release cycle, and production support. The ecosystem around Docker is also expanding rapidly with new tools for container orchestration, composition, and platforms as a service being built using Docker. While Docker has come a long way, there is still work to be done in areas like security and managing container lifecycles and dependencies.
This document discusses 10 things not to forget before deploying Docker in production. It covers logging, monitoring, secrets, container access, filesystem choices, disk space usage, build optimizations, download speeds, backups, and Docker clusters. Overall, Docker provides benefits for portability and workflows but has some challenges to address for system-wide deployments in production environments.
The Docker ecosystem and the future of application deploymentJérôme Petazzoni
Ten years ago, virtualization ignited a revolution which gave birth to the Cloud and the DevOps initiative. Today, with containers, we are at the dawn of a similar breakthrough.
How can we capture the value of containers? How can we use their features to implement microservices and immutable infrastructures, while retaining as much as possible of our existing practices? The answer is in the rich ecosystem that developed around Docker, an open-source platform to build, ship, and run applications in containers.
In this keynote we’ll explore what the applications of tomorrow will look like, how they’ll be deployed and distributed – and how to leverage those tools today.
Leveraging the Power of containerd Events - Evan HazlettDocker, Inc.
containerd provides the low-level functionality that enables the Docker Engine to run containers. containerd events provide a simple, yet powerful mechanism to integrate with virtually any other system with minimal effort. This talk will cover what containerd events are and how to use them for integration with systems ranging from monitoring and logging to container networking using CNI (Container Network Interface) plugins.
Container Torture: Run any binary, in any containerDocker, Inc.
Running a container app in the container is easy, attaching a custom app to a running container is a bit trickier. But, what if I wanted to run any arbitrary binary in any arbitrary running container? Common wisdom says it's impossible. Is it ? This talk dives into containers internals, just above the kernel surface and demonstrates that this is, indeed possible. With a bit of C magic and ptrace.
Docker is an open-source tool that allows developers to easily deploy applications inside isolated containers. Kubernetes is an open-source system for automating deployment and management of containerized applications across clusters of hosts. It coordinates containerized applications across nodes by providing mechanisms for scheduling, service discovery, and load balancing. The key components of Kubernetes include Pods, Services, ReplicationControllers, Scheduler, API Server, etcd and Nodes.
What's really the difference between a VM and a Container?Adrian Otto
Slides for my SCaLE 15x Presentation for 2017-03-04:
What's really the difference between a VM and a Container?
Docker, Kubernetes, Mesos, and the container buzzword bingo game leaves us all asking this same question at some point. We know VMs are great, so why all this fuss now about containers? Are they the same thing, but better? This talk will go deep into the technical details of the fundamental differences between the technology, explaining in depth how each of them works, and where each of them shine and why businesses choose one over the other. You will also get a good sense of where the warts are too, so you know when to pick the right one (or the right combination of them) depending on what’s important for each of your various workloads.
https://www.socallinuxexpo.org/scale/15x/presentations/whats-really-difference-between-vm-and-container
Deep Dive in Docker Overlay Networks - Laurent Bernaille - Architect, D2SIDocker, Inc.
Docker overlay networks allow containers on different hosts to communicate by encapsulating traffic in VXLAN tunnels. The overlay network uses Consul for service discovery and stores network state like MAC address tables. Containers connect to the overlay network via veth interfaces attached to a bridge in the overlay namespace. When a container sends traffic to an unknown destination, the bridge floods it over VXLAN tunnels to other nodes to discover the destination's location.
It's 2018. Are My Containers Secure Yet!?Phil Estes
The document discusses the state of container security. It notes that while container security has improved significantly from early Docker implementations, there are still challenges. Container isolation features have known vulnerabilities and lightweight virtualization is gaining popularity for added security. The document outlines security considerations for container hosts, images, runtimes and usability, and discusses emerging projects aimed at further enhancing security such as Project Grafeas, libentitlements, and LinuxKit. It concludes that open source projects now provide tools to securely isolate containers with defense-in-depth, and vendors offer solutions to guide users in configuring container platform security.
Chris Swan's presentation on Docker Networking from Container.Camp in London 12 September 2014
A look at how stock Docker does networking, and how containers can be connected together. Introduction to libchan and pipework projects, and a look at container internetworking using Open vSwitch and kernel VXLAN. Docker can also be used as a place to run layer 4-7 network application services like SSL termination, proxying, load balancing, content caching and intrusion detection.
Docker Engine Evolution: From Monolith to Discrete ComponentsPhil Estes
The Docker Engine evolved from a monolithic binary into discrete components. Initially, the Docker Engine was a single statically-linked binary that provided the client, daemon, build tool, and registry client functionality. It has since been decomposed, with container execution handled by OCI and runc, image management by containerd, and the various components integrated together by Docker CE and Moby. This decomposition allows the components to be reused independently by other systems like Kubernetes, which uses cri-containerd to integrate with containerd and runc for container execution instead of directly integrating with Docker.
What's Running My Containers? A review of runtimes and standards.Phil Estes
A talk given at Open Source Leadership Summit (OSLS) on Thursday, March 14th in Half Moon Bay, CA. In this talk the current status of the Open Container Initiative (OCI) standards as well as the Kubernetes Container Runtime Interface (CRI) were presented, with a view towards how these components have provided a level playing field with significant choice when it comes to container runtimes for use in Kubernetes, as well as interoperability per the OCI standards.
Introdution to Docker (theory and hands on) dbCafé - dbTrentoCristian Consonni
In this presentation I will introduce Docker, an "an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux." (source: Wikipedia). The presentation has an initial theoretical part and a second more practical, hands on part.
Docker Athens: Docker Engine Evolution & Containerd Use CasesPhil Estes
These slides are from a talk presented at the Docker Athens meetup on Thursday, May 31, 2018. They start by covering the evolution of the Docker engine of 2014/2015 into the separate components of OCI runc, (now) CNCF containerd, and the Docker client and daemon projects. Finally, various use cases for the CNCF containerd "core container runtime" project are detailed, from the Docker engine itself to serverless frameworks like OpenWhisk, to the container runtime interface (CRI) within Kubernetes.
Introduction to Microservices with Docker and KubernetesDavid Charles
Slides used to accompany a talk to introduce Microservices and two related technologies; Docker and Kubernetes. A large part of this talk is a live demonstration of Docker and Kubernetes features so the slides are just to support.
Adrian Otto from Rackspace will present his perspective of "Docker 101", for Docker novices. Learn the difference between Dockerfiles, containers, running containers, terminated containers, container images, Docker Registry, and a demo of the Docker CLI that goes beyond what you learn from the online simulator.
Containers: from development to production at DevNation 2015Jérôme Petazzoni
In Docker, applications are shipped using a lightweight format, managed with a high-level API, and run within software containers which abstract the host environment. Operating details like distributions, versions, and network setup no longer matter to the application developer.
Thanks to this abstraction level, we can use the same container across all steps of the life cycle of an application, from development to production. This eliminates problems stemming from discrepancies between those environments.
Even so, these environments will always have different requirements. If our quality assurance (QA) and production systems use different logging systems, how can we still ship the same container to both? How can we satisfy the backup and security requirements of our production stack without bloating our development stack?
In this sess, you will learn about the unique features in containers that allow you to cleanly decouple system administrator tasks from the core of your application. We’ll show you how this decoupling results in smaller, simpler containers, and gives you more flexibility when building, managing, and evolving your application stacks.
The document discusses effective version control. It begins with an introduction of the presenter and overview of topics to be covered, including concepts, evolution of version control systems, best practices, and whether centralized or distributed systems are better. Key concepts discussed include repositories, working copies, patches, history, tags, branches, merges, and ancestry. The evolution of version control systems from early ones like SCCS and RCS to modern ones like Git, Mercurial, Subversion, and Team Foundation Server is outlined. Best practices recommended include committing often, branching early and merging often, and keeping the master branch releasable. The document concludes by emphasizing the power of version control tools and reusing existing code rather than reinventing
The document discusses version control systems and the tool Git. It explains that Git allows tracking changes to source code, including who changed what and when. It also covers distributed and centralized version control. Key Git functions are defined, like committing changes, branching, merging, diffing, logging and cloning/pulling repositories. Instructions for using Git in Eclipse and TortoiseGit are provided. Best practices and additional learning resources are recommended at the end.
Distro Recipes 2013 : Upstream management and consequences on the distributi...Anne Nicolas
This document discusses ulogd, a utility for logging network packets captured by Netfilter. It begins with background on early packet logging using syslog before ulogd was introduced. Ulogd allows packet logging via a netlink socket and userspace daemon. The document outlines ulogd's history and dependencies, issues with developer and distribution support, and concludes by providing contact information.
Docker has developed rapidly in the past year. It started as a simple tool used to package applications into containers using LXC but has since replaced LXC with its own containerization technology. Major releases introduced compatibility with mainstream Linux distributions, a regular release cycle, and production support. The ecosystem around Docker is also expanding rapidly with new tools for container orchestration, composition, and platforms as a service being built using Docker. While Docker has come a long way, there is still work to be done in areas like security and managing container lifecycles and dependencies.
This document discusses 10 things not to forget before deploying Docker in production. It covers logging, monitoring, secrets, container access, filesystem choices, disk space usage, build optimizations, download speeds, backups, and Docker clusters. Overall, Docker provides benefits for portability and workflows but has some challenges to address for system-wide deployments in production environments.
The Docker ecosystem and the future of application deploymentJérôme Petazzoni
Ten years ago, virtualization ignited a revolution which gave birth to the Cloud and the DevOps initiative. Today, with containers, we are at the dawn of a similar breakthrough.
How can we capture the value of containers? How can we use their features to implement microservices and immutable infrastructures, while retaining as much as possible of our existing practices? The answer is in the rich ecosystem that developed around Docker, an open-source platform to build, ship, and run applications in containers.
In this keynote we’ll explore what the applications of tomorrow will look like, how they’ll be deployed and distributed – and how to leverage those tools today.
Leveraging the Power of containerd Events - Evan HazlettDocker, Inc.
containerd provides the low-level functionality that enables the Docker Engine to run containers. containerd events provide a simple, yet powerful mechanism to integrate with virtually any other system with minimal effort. This talk will cover what containerd events are and how to use them for integration with systems ranging from monitoring and logging to container networking using CNI (Container Network Interface) plugins.
Container Torture: Run any binary, in any containerDocker, Inc.
Running a container app in the container is easy, attaching a custom app to a running container is a bit trickier. But, what if I wanted to run any arbitrary binary in any arbitrary running container? Common wisdom says it's impossible. Is it ? This talk dives into containers internals, just above the kernel surface and demonstrates that this is, indeed possible. With a bit of C magic and ptrace.
Docker is an open-source tool that allows developers to easily deploy applications inside isolated containers. Kubernetes is an open-source system for automating deployment and management of containerized applications across clusters of hosts. It coordinates containerized applications across nodes by providing mechanisms for scheduling, service discovery, and load balancing. The key components of Kubernetes include Pods, Services, ReplicationControllers, Scheduler, API Server, etcd and Nodes.
What's really the difference between a VM and a Container?Adrian Otto
Slides for my SCaLE 15x Presentation for 2017-03-04:
What's really the difference between a VM and a Container?
Docker, Kubernetes, Mesos, and the container buzzword bingo game leaves us all asking this same question at some point. We know VMs are great, so why all this fuss now about containers? Are they the same thing, but better? This talk will go deep into the technical details of the fundamental differences between the technology, explaining in depth how each of them works, and where each of them shine and why businesses choose one over the other. You will also get a good sense of where the warts are too, so you know when to pick the right one (or the right combination of them) depending on what’s important for each of your various workloads.
https://www.socallinuxexpo.org/scale/15x/presentations/whats-really-difference-between-vm-and-container
Deep Dive in Docker Overlay Networks - Laurent Bernaille - Architect, D2SIDocker, Inc.
Docker overlay networks allow containers on different hosts to communicate by encapsulating traffic in VXLAN tunnels. The overlay network uses Consul for service discovery and stores network state like MAC address tables. Containers connect to the overlay network via veth interfaces attached to a bridge in the overlay namespace. When a container sends traffic to an unknown destination, the bridge floods it over VXLAN tunnels to other nodes to discover the destination's location.
It's 2018. Are My Containers Secure Yet!?Phil Estes
The document discusses the state of container security. It notes that while container security has improved significantly from early Docker implementations, there are still challenges. Container isolation features have known vulnerabilities and lightweight virtualization is gaining popularity for added security. The document outlines security considerations for container hosts, images, runtimes and usability, and discusses emerging projects aimed at further enhancing security such as Project Grafeas, libentitlements, and LinuxKit. It concludes that open source projects now provide tools to securely isolate containers with defense-in-depth, and vendors offer solutions to guide users in configuring container platform security.
Chris Swan's presentation on Docker Networking from Container.Camp in London 12 September 2014
A look at how stock Docker does networking, and how containers can be connected together. Introduction to libchan and pipework projects, and a look at container internetworking using Open vSwitch and kernel VXLAN. Docker can also be used as a place to run layer 4-7 network application services like SSL termination, proxying, load balancing, content caching and intrusion detection.
Docker Engine Evolution: From Monolith to Discrete ComponentsPhil Estes
The Docker Engine evolved from a monolithic binary into discrete components. Initially, the Docker Engine was a single statically-linked binary that provided the client, daemon, build tool, and registry client functionality. It has since been decomposed, with container execution handled by OCI and runc, image management by containerd, and the various components integrated together by Docker CE and Moby. This decomposition allows the components to be reused independently by other systems like Kubernetes, which uses cri-containerd to integrate with containerd and runc for container execution instead of directly integrating with Docker.
What's Running My Containers? A review of runtimes and standards.Phil Estes
A talk given at Open Source Leadership Summit (OSLS) on Thursday, March 14th in Half Moon Bay, CA. In this talk the current status of the Open Container Initiative (OCI) standards as well as the Kubernetes Container Runtime Interface (CRI) were presented, with a view towards how these components have provided a level playing field with significant choice when it comes to container runtimes for use in Kubernetes, as well as interoperability per the OCI standards.
Introdution to Docker (theory and hands on) dbCafé - dbTrentoCristian Consonni
In this presentation I will introduce Docker, an "an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux." (source: Wikipedia). The presentation has an initial theoretical part and a second more practical, hands on part.
Docker Athens: Docker Engine Evolution & Containerd Use CasesPhil Estes
These slides are from a talk presented at the Docker Athens meetup on Thursday, May 31, 2018. They start by covering the evolution of the Docker engine of 2014/2015 into the separate components of OCI runc, (now) CNCF containerd, and the Docker client and daemon projects. Finally, various use cases for the CNCF containerd "core container runtime" project are detailed, from the Docker engine itself to serverless frameworks like OpenWhisk, to the container runtime interface (CRI) within Kubernetes.
Introduction to Microservices with Docker and KubernetesDavid Charles
Slides used to accompany a talk to introduce Microservices and two related technologies; Docker and Kubernetes. A large part of this talk is a live demonstration of Docker and Kubernetes features so the slides are just to support.
Adrian Otto from Rackspace will present his perspective of "Docker 101", for Docker novices. Learn the difference between Dockerfiles, containers, running containers, terminated containers, container images, Docker Registry, and a demo of the Docker CLI that goes beyond what you learn from the online simulator.
Containers: from development to production at DevNation 2015Jérôme Petazzoni
In Docker, applications are shipped using a lightweight format, managed with a high-level API, and run within software containers which abstract the host environment. Operating details like distributions, versions, and network setup no longer matter to the application developer.
Thanks to this abstraction level, we can use the same container across all steps of the life cycle of an application, from development to production. This eliminates problems stemming from discrepancies between those environments.
Even so, these environments will always have different requirements. If our quality assurance (QA) and production systems use different logging systems, how can we still ship the same container to both? How can we satisfy the backup and security requirements of our production stack without bloating our development stack?
In this sess, you will learn about the unique features in containers that allow you to cleanly decouple system administrator tasks from the core of your application. We’ll show you how this decoupling results in smaller, simpler containers, and gives you more flexibility when building, managing, and evolving your application stacks.
The document discusses effective version control. It begins with an introduction of the presenter and overview of topics to be covered, including concepts, evolution of version control systems, best practices, and whether centralized or distributed systems are better. Key concepts discussed include repositories, working copies, patches, history, tags, branches, merges, and ancestry. The evolution of version control systems from early ones like SCCS and RCS to modern ones like Git, Mercurial, Subversion, and Team Foundation Server is outlined. Best practices recommended include committing often, branching early and merging often, and keeping the master branch releasable. The document concludes by emphasizing the power of version control tools and reusing existing code rather than reinventing
The document discusses version control systems and the tool Git. It explains that Git allows tracking changes to source code, including who changed what and when. It also covers distributed and centralized version control. Key Git functions are defined, like committing changes, branching, merging, diffing, logging and cloning/pulling repositories. Instructions for using Git in Eclipse and TortoiseGit are provided. Best practices and additional learning resources are recommended at the end.
This document provides an overview of Git and version control systems. It discusses key concepts such as centralized (CVCS) and distributed (DVCS) version control systems. Git is introduced as a popular DVCS, along with advantages like offline commits and ability to refer to others' local repositories. Basic Git commands and workflow are explained, including initializing a repository, adding/committing files, branching, merging, and resolving conflicts. The document concludes with notes on collaborative development using remote repositories on services like GitHub.
This document provides instructions for getting started with Git and GitHub. It outlines the steps to install Git, create a GitHub account, download repositories from GitHub, fork repositories, create branches, create pull requests, and create your own repository. It also explains key Git concepts like version control, local and remote repositories, and the three trees in Git. The document recommends configuring user information and SSH keys. It demonstrates common Git commands like init, status, add, commit, push, pull, clone and checkout. It discusses merge conflicts and meaningful commit messages. Finally, it points to additional resources and provides a practice project for following the GitHub flow.
The document discusses moving a project from Subversion to Git version control. It describes the typical Subversion workflow with a trunk branch and stable release tags. It then outlines some of the issues this can cause like merge hell and broken builds. The document proposes migrating the codebase to Git, describing how to convert the Subversion repository to Git, mirror changes between the two systems, and migrate tools and developers over to the new Git workflow. It contrasts the new Git workflow with branches for features and bug fixes that can be easily merged into the master branch.
Git is an open source, distributed version control system designed for speed and efficiency. It is fully distributed, allowing work to be done offline and with no central server required. Git stores snapshots of files instead of tracking changes between file versions, making it very efficient and allowing files to be recovered even after changes have been made.
UniK - a unikernel compiler and runtimeLee Calcote
This document contains the slides from a presentation by Lee Calcote on UniK, an open source tool for building and deploying unikernels. UniK allows developers to compile applications written in languages like Java, C++, Python and Go directly into small, secure virtual machines called unikernels. It supports deploying unikernels on various cloud platforms and virtualization technologies. The presentation covers what unikernels are, the UniK tool, its architecture and components, and demonstrates how to use UniK to build and deploy a sample application as a unikernel.
This document introduces version control and discusses its importance and challenges. It describes the different types of version control systems including local, centralized, and distributed systems. Key concepts like committing changes, updating workspaces, branching, and merging are explained. The document also highlights challenges like conflicts and provides tips to prevent them. Finally, it lists some popular web-based and open source version control systems and projects.
Google has been running everything in containers for the past 15 years, but how do we orchestrate and manage all those containers? We've built and released the open source Kubernetes (http://kubernetes.io), which is based on years of running containers internally at Google. Join us for an introduction to containers and Kubernetes, followed by a hands-on workshop building and deploying your own Kubernetes cluster with multiple front end, database and caching instances.
Docker containers help solve the issue of process-level reproducibility by packaging up your apps and execution environments into a number of containers. But once you have a lot of containers running, you'll need to coordinate them across a cluster of machines while keeping them healthy and making sure they can find each other. This can quickly turn into an unmanageable mess! Wouldn't it be helpful if you could declare what wanted, and then have the cluster assign the resources to get it done and to recover from failures and scale on demand? Kubernetes is here to help!
Key takeaways
- Gentle introduction into containers: why and how
- Learn how Google manages applications using containers
- Intro to Kubernetes: managing applications and services
- Build and deploy your own multi-tier application using Kubernetes
This document provides an overview and comparison of Docker, Kubernetes, OpenShift, Fabric8, and Jube container technologies. It discusses key concepts like containers, images, and Dockerfiles. It explains how Kubernetes provides horizontal scaling of Docker through replication controllers and services. OpenShift builds on Kubernetes to provide a platform as a service with routing, multi-tenancy, and a build/deploy pipeline. Fabric8 and Jube add additional functionality for developers, with tools, libraries, logging, and pure Java Kubernetes implementations respectively.
Puzzle ITC Talk @Docker CH meetup CI CD_with_Openshift_0.2Amrita Prasad
This document discusses continuous delivery using OpenShift. It begins with an overview of OpenShift v3, including that it is a container platform as a service based on Docker and Kubernetes. It then covers key concepts in continuous integration and continuous delivery like automated database migrations and rolling updates. Finally, it provides an example of setting up a continuous integration/continuous delivery pipeline in OpenShift using Jenkins, including building and deploying a Java/Maven application through various stages.
All Things Open 2015: DOCKER: EVERYTHING YOU SHOULD KNOWDocker, Inc
Docker is an open platform to build, ship, and run any Linux application, anywhere. It can be used in many ways: providing clean, isolated development environments; quickly spinning up test instances for CI purposes; ensuring coherence between development and production platform; and much more. You will learn about Docker basic concepts, how to run containers, create images, leverage Docker Hub, and stack multiple containers to orchestrate distributed applications.
Topics include
- What’s Docker?
- Understanding Docker images
- Building images with Dockerfile
- Pushing and pulling images
- Development workflow with Docker
- Orchestrating distributed applications.
Mercurial is a distributed version control system (DVCS) where each developer's working copy of a project is also a repository. This allows developers to work independently of a central server and easily share changes. Key features include fast branching and merging, extensibility through plugins, and distributed collaboration through pushing and pulling changes between repositories. While more complex initially than centralized systems like Subversion, DVCS provides advantages for sharing work and flexible workflows.
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...Codemotion
In less than two years Docker went from first line of code to major Open Source project with contributions from all the big names in IT. Everyone is excited, but what's in for me - as a Dev or Ops? In short, Docker makes creating Development, Test and even Production environments an order of magnitude simpler, faster and completely portable across both local and cloud infrastructure. We will start from Docker main concepts: how to create a Linux Container from base images, run your application in it, and version your runtimes as you would with source code, and finish with a concrete example.
WSO2Con USA 2015: Revolutionizing WSO2 PaaS with Kubernetes & App FactoryWSO2
Containerization is now becoming the most efficient way of developing and deploying software solutions in the cloud. It provides means of running applications with less resource usage, fast startup times, portability across machines, lightweight & layered container images, container image registries, multi-tenancy and many more additional advantages. Docker embraced this space by fulfilling the above requirements and attracting the industry within a very short period of time. Google solved container cluster management features by initiating the Kubernetes project over a decade of experience on running container technologies at scale. Now Kubernetes is in the process of adding more advanced PaaS features such as autoscaling, multicloud or region deployments and composite application model with best of breed ideas and practices from the community.
WSO2 App Factory and WSO2 App Cloud are application Platform as a Service (aPaaS) that provide application development and hosting deployed through these technologies. In this tutorial we will demonstrate how WSO2 products can be run on Kubernetes and the latest WSO2 App Cloud features.
This document discusses Docker, an open source project that automates the deployment of applications inside software containers. It begins by describing common problems in application deployment and how virtual machines address some issues but introduce overhead. It then summarizes the history and rapid growth of Docker since its launch in 2013. The rest of the document dives into technical aspects of Docker like how images and containers work, comparisons to virtual machines, security considerations, the Docker workflow, and how Docker relates to DevOps and continuous delivery practices.
Alm tce parallel development by Liya Kats and Miron Gopher from Tikal Knowledge given at Tikal TCE:
http://www.tikalk.com/tce-event-281210-revolution-application-lifecycle-management-krypton
Basic Idea
Develop a build system that leverages Docker for implementing continuous integration/deployment(CI/CD) pipeline. A git commit must kick off packaging a Docker Image and provisioning it in a VM.
A git based commit should be used for starting of a build for a docker image which would then be run and provisioned in a Virtual Machine. After every commit a series of test cases is then run on the code to ensure the correctness of the code. After all the test-cases pass, the image gets updated on docker-hub registry, and a VM gets provisioned which can then run the software directly (after pulling the image from the docker-hub).
This entire process ensures that the most recent and updated version of the code is available to the person who is using the software and this speeds up the overall process by at least 2-3 folds.
This document provides an introduction to version control systems. It discusses some of the key challenges in sharing files among software developers working on the same project. Early approaches involved locking files to prevent simultaneous editing, but this limited parallel work. Modern version control systems like SVN and Git allow concurrent editing by having developers make local changes and later merging those changes. Distributed version control systems store the full revision history locally, allowing work without a central server. The document outlines some common version control processes and terminology.
Introduction to Version Control and Configuration ManagementPhilip Johnson
Version control systems like SVN aim to address three classic configuration management problems: the double maintenance problem of multiple copies needing separate updates, the shared data problem of developers accessing the same files, and the simultaneous update problem of file clobbering during concurrent edits. SVN improves on CVS by using a database backend instead of file versions, supporting repository-wide instead of file-based versions, and using directory-based tags and branches. Distributed version control systems like Git store a full code repository locally and support decentralized workflows without a central server.
Building Clustered Applications with Kubernetes and DockerSteve Watt
This document discusses building clustered applications with Kubernetes and Docker. It provides an overview of Kubernetes, including its architecture and components. It then demonstrates how to install Kubernetes, define and deploy pods, add replication controllers and services. It discusses using volumes for persistence, including different volume types like GlusterFS. Finally, it touches on debugging and provides contact information for following up.
AtlasCamp 2010: What is DVCS and why it will change the way we work - Jens Sc...Atlassian
The document discusses distributed version control systems (DVCS) like Mercurial compared to centralized version control systems like Subversion. It covers basic DVCS concepts like repositories, changesets, branching and merging in Mercurial. It also provides examples of using Mercurial for separate feature development, collaborative feature development, and tagging revisions.
This document is a slide deck about Hyper-V high availability and live migration presented by Greg Shields of Concentrated Technology. The deck covers understanding live migration and its role in Hyper-V HA, fundamentals of Windows failover clustering, building a two-node Hyper-V cluster with iSCSI storage, managing a Hyper-V cluster, and adding disaster recovery with multi-site clustering. The deck is intended to help IT professionals implement and manage highly available Hyper-V environments.
This document discusses common primitives needed in Docker environments when deploying applications across multiple machines. It outlines several key primitives like persistence, service discovery, monitoring, logging, authentication and authorization. For each primitive, it describes different approaches, lists relevant open source projects, and provides recommendations on how to implement the primitive in a way that is standardized, scalable and works for both new and legacy applications. The goal is to abstract infrastructure and treat all machines similarly while achieving reliability, reproducibility and reducing manual labor.
Similar to Distributed Version Control Systems (20)
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...Jason Yip
The typical problem in product engineering is not bad strategy, so much as “no strategy”. This leads to confusion, lack of motivation, and incoherent action. The next time you look for a strategy and find an empty space, instead of waiting for it to be filled, I will show you how to fill it in yourself. If you’re wrong, it forces a correction. If you’re right, it helps create focus. I’ll share how I’ve approached this in the past, both what works and lessons for what didn’t work so well.
What is an RPA CoE? Session 1 – CoE VisionDianaGray10
In the first session, we will review the organization's vision and how this has an impact on the COE Structure.
Topics covered:
• The role of a steering committee
• How do the organization’s priorities determine CoE Structure?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/temporal-event-neural-networks-a-more-efficient-alternative-to-the-transformer-a-presentation-from-brainchip/
Chris Jones, Director of Product Management at BrainChip , presents the “Temporal Event Neural Networks: A More Efficient Alternative to the Transformer” tutorial at the May 2024 Embedded Vision Summit.
The expansion of AI services necessitates enhanced computational capabilities on edge devices. Temporal Event Neural Networks (TENNs), developed by BrainChip, represent a novel and highly efficient state-space network. TENNs demonstrate exceptional proficiency in handling multi-dimensional streaming data, facilitating advancements in object detection, action recognition, speech enhancement and language model/sequence generation. Through the utilization of polynomial-based continuous convolutions, TENNs streamline models, expedite training processes and significantly diminish memory requirements, achieving notable reductions of up to 50x in parameters and 5,000x in energy consumption compared to prevailing methodologies like transformers.
Integration with BrainChip’s Akida neuromorphic hardware IP further enhances TENNs’ capabilities, enabling the realization of highly capable, portable and passively cooled edge devices. This presentation delves into the technical innovations underlying TENNs, presents real-world benchmarks, and elucidates how this cutting-edge approach is positioned to revolutionize edge AI across diverse applications.
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
The Microsoft 365 Migration Tutorial For Beginner.pptxoperationspcvita
This presentation will help you understand the power of Microsoft 365. However, we have mentioned every productivity app included in Office 365. Additionally, we have suggested the migration situation related to Office 365 and how we can help you.
You can also read: https://www.systoolsgroup.com/updates/office-365-tenant-to-tenant-migration-step-by-step-complete-guide/
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
Dandelion Hashtable: beyond billion requests per second on a commodity serverAntonios Katsarakis
This slide deck presents DLHT, a concurrent in-memory hashtable. Despite efforts to optimize hashtables, that go as far as sacrificing core functionality, state-of-the-art designs still incur multiple memory accesses per request and block request processing in three cases. First, most hashtables block while waiting for data to be retrieved from memory. Second, open-addressing designs, which represent the current state-of-the-art, either cannot free index slots on deletes or must block all requests to do so. Third, index resizes block every request until all objects are copied to the new index. Defying folklore wisdom, DLHT forgoes open-addressing and adopts a fully-featured and memory-aware closed-addressing design based on bounded cache-line-chaining. This design offers lock-free index operations and deletes that free slots instantly, (2) completes most requests with a single memory access, (3) utilizes software prefetching to hide memory latencies, and (4) employs a novel non-blocking and parallel resizing. In a commodity server and a memory-resident workload, DLHT surpasses 1.6B requests per second and provides 3.5x (12x) the throughput of the state-of-the-art closed-addressing (open-addressing) resizable hashtable on Gets (Deletes).
Conversational agents, or chatbots, are increasingly used to access all sorts of services using natural language. While open-domain chatbots - like ChatGPT - can converse on any topic, task-oriented chatbots - the focus of this paper - are designed for specific tasks, like booking a flight, obtaining customer support, or setting an appointment. Like any other software, task-oriented chatbots need to be properly tested, usually by defining and executing test scenarios (i.e., sequences of user-chatbot interactions). However, there is currently a lack of methods to quantify the completeness and strength of such test scenarios, which can lead to low-quality tests, and hence to buggy chatbots.
To fill this gap, we propose adapting mutation testing (MuT) for task-oriented chatbots. To this end, we introduce a set of mutation operators that emulate faults in chatbot designs, an architecture that enables MuT on chatbots built using heterogeneous technologies, and a practical realisation as an Eclipse plugin. Moreover, we evaluate the applicability, effectiveness and efficiency of our approach on open-source chatbots, with promising results.
Essentials of Automations: Exploring Attributes & Automation ParametersSafe Software
Building automations in FME Flow can save time, money, and help businesses scale by eliminating data silos and providing data to stakeholders in real-time. One essential component to orchestrating complex automations is the use of attributes & automation parameters (both formerly known as “keys”). In fact, it’s unlikely you’ll ever build an Automation without using these components, but what exactly are they?
Attributes & automation parameters enable the automation author to pass data values from one automation component to the next. During this webinar, our FME Flow Specialists will cover leveraging the three types of these output attributes & parameters in FME Flow: Event, Custom, and Automation. As a bonus, they’ll also be making use of the Split-Merge Block functionality.
You’ll leave this webinar with a better understanding of how to maximize the potential of automations by making use of attributes & automation parameters, with the ultimate goal of setting your enterprise integration workflows up on autopilot.
"Choosing proper type of scaling", Olena SyrotaFwdays
Imagine an IoT processing system that is already quite mature and production-ready and for which client coverage is growing and scaling and performance aspects are life and death questions. The system has Redis, MongoDB, and stream processing based on ksqldb. In this talk, firstly, we will analyze scaling approaches and then select the proper ones for our system.
5. How many of you have
used any DVCS?
The Deep Virtual
Compton
Scattering (DVCS)
is studied at
Jefferson Lab using
the CEBAF 6 GeV
polarized electron
beam and the
CLAS detector.
7. History of VCSs
First there was an ad hoc approach (copy dirs)
Then local version control systems (VCSs)
Then centralized (means there is a server)
CVS, SVN
ClearCase, Perforce (proprietary)
8. Problems of VCSs (1)
The VCS server is a
single point of failure
Clients only have a
snapshot
Cannot commit when
the server is offline
No checksums
9. Problems of VCSs (2)
no distinction between
saving a change and
making it available
Getting history, doing
diffs requires the
server
So there is some
latency
10. Linus on CVS/SVN
Because my hatred of CVS has
meant that I see Subversion as
being the most pointless
project ever started.
11. VCSs vs. DVCSs
Clients have the whole
repository
There may be many
servers
Micro commits
possible (two step
commit)
No latency (all is local)
12. List of DVCSes
Git (inspired by BitKeeper)
Mercurial (Hg) (inspired by BitKeeper)
BitKeeper (proprietary)
Bazaar
Darcs
13. Git
Developed by Torvalds for the Linux kernel
When the BitKeeper license was revoked
The controversy with Andrew Tridgell
Written in a collection of Perl, C, shell scripts
Free public repository at github.com (300mb)
http://progit.org/book/
17. Integrity
Git uses SHA1
checksums to protect
content against errors
The checksum also
includes the parent’s
checksum
This is also true for
Mercurial
18. Show github.org
Show the certificate to login
Demo
show eclipse properties -> ssh2
show .ssh/id_rsa
show commit and push
19. Mercurial (Hg)
Started by Matt Mackall a month after Git
because of the same incident with BitKeeper
unfortunately the linux guys chose Git :(
it got popular anyway
hginit.com - tutorial by Joel Spolsky
21. Create a repository on bitbucket
Create a project and push to the repository
hg clone the project on a temp dir
add to .hg/hgrc
[web]
allow_push = *
push_ssl = false
Pull from a second eclipse.
Add a class on eclpise1 and push to localhost:8000
Add the same class on eclipse2 and push.
Merge.
Get all the changes to eclipse1 and commit to bitbucket
Demo
23. Git vs. Mercurial
flexible straightforward
scattered monolithic
mutable history immutable history
hierarchical history linear history
Rejects CVS/SVN Can integrate w/ SVN
24. Impact on small
projects (1)
Have you ever used a remote repository?
Have you had an idiot colleague that
constantly broke something?
Doing diff, getting history is a pain!
25. Impact on small
projects (2)
Have you been working on a feature that is
quite big and at the end of the day you wanted
to commit even though it is not finished?
Have you ever wrapped your half-done
feature so that it wouldn’t impact the whole
project?
26. http://
hg.openjdk.java.net
The previous repository was TeamWare (home-
brewed DSCM as they call it)
Since b24 openjdk7 has been on Mercurial
It is a hg-forest (means multiple repositories)
There are push and pull gates, so in the
“official” repository there aren’t many changes