Docker, Apache Mesos & DCOS: Run and manage cloud datacenter
What you'll learn
- Learn about containerization of applications
- Learn about Docker, Apache Mesos and DC/OS
- Deploy and manage your own DC/OS cluster
- Deploy and manage your own Docker instance
- Learn about sub-components and usage of various Apache Mesos and DC/OS services
- Access to a physical or virtual machine to install the required software
- Access to a free or paid account for Amazon AWS
- Basic information about software development processes
- Basic knowledge about networking, system setup, Linux OS commands etc.
- Basic knowledge about virtual machines
- Basic knowledge about cloud computing
- Desire to learn something new and continuous improvement
It’s been a few years since Marc Andreessen, the found of Mosaic and Netscape - coined the phrase software is eating the world. But indeed it is true today. , the idea that “every company needs to become a software company” is considered almost a cliché. No matter your industry, you’re expected to be reimagining your business to make sure you’re not the next local taxi company or hotel chain caught completely off guard by your equivalent of Uber or Airbnb.
Doing business in the 21st century means embracing a world where software quite literally powers everything—from televisions to cars, and from social media to banking systems.
In the mean time Software development has seen a paradigm shift in the last few decades.
From the beginning of computing era in the 1960s up to late 1990s, the software was built by relatively small teams. These teams used large monolithic software stacks to build relatively simple and smaller applications which were used by 1 to a few tens of people. These applications were deployed on a central network server which the users connected to via their terminals and used the application.
The current era is all about ubiquitous connectivity and ever increasing adoption of mobile computing. To cater to these demands - the modern mobile apps and web applications are reaching global scale and billions of users. These app and web applications are built by larger teams which are geographically distributed. They build those large applications by stitching together a collection of services, APIs or microservices.
These services use a variety of stacks and are independent of each other. The services run on clusters spanning thousands or tens of thousands of servers or nodes. And the consumers use these applications over the cloud and the public internet using their mobile, tablet and desktop devices.
Deployment, management and operationalizing these large complex infrastructures is a daunting task. Containerization of the apps and services help to simplify these tasks. But even containers leave A bulk of administration tasks for deploying the latest application code, upgrading the servers, mapping the service end points, etc. to the user and DevOps engineers.
Won't it be great if we were able to aggregate and combine all the computing power available to us in our datacenter and treat it as one large computer?
What if we had a smart operating system which could manage our entire data center just like Linux or MacOS or Windows can manage our personal computers. Whether we are managing two virtual nodes or 10,000 Of them - Wouldn’t it be nice just to instruct our collection of servers or our datacenter – hey datacenter I want to run a web application and a database? Here is the code – and here are the commands to run these applications – please figure out which nodes can run these applications; deploy them and run them. By the way, if any of those nodes die – please make sure you move my application to another healthy node so that the end users do not experience any disruption.
Then based on the requirement of a particular app, a scheduler can dynamically allocate resources to the application. This will make the whole system much more efficient. We will be able to free up resources and drive the utilization up. This methodology has all kinds of benefits from saved costs to more uptime of the application and less administrative overhead.
This is exactly what Docker, Apache Mesos, and DC/OS provide.
Docker is open source engine that can help you automate the deployment of applications inside software containers. Is was released in March 2013 and has been gaining popularity ever since. It has over 100 million downloads, and over 75000 applications are running as dockerized applications – that is a LOT!
Apache Mesos is an open source cluster manager that provides efficient resource isolation and sharing across distributed applications or frameworks.
Mesosphere DC/OS is an enterprise grade datacenter-scale operating system, providing a single platform for running containers, big data, and distributed apps in production.
DC/OS is built on the Apache Mesos core and provides newer technology including the native container-orchestration, Marathon application platform, intuitive user interfaces and much much more.
Knowledge and experience about Docker, Apache Mesos and DC/OS could be very valuable for your career. The latest stats and figures show some amazing numbers like jobs requiring these skill sets pay higher than most of the jobs posted on public job boards within the US and annual salaries for professionals could be as high as $120,000. That is the exact reason why you must enroll in this course and take your career to the next level.
As the title suggests – this course aims to provide you enough knowledge about Docker, Apache Mesos, and DC/OS so that you can run and operate your own data center using these components together. But specifically:
- You will learn about containerization of apps, the plethora of benefits and leverages offered by containers and Docker.
- You will also be able to able to install and run your Docker instances and run your containerized apps on it.
With the prospect of making software deployment faster and increase user reach, you will be able to employ DC/OS to manage your data centers better.
- You will learn about running your application and services within DC/OS in a load balanced manner.
- You will be able to install new services and packages to deploy complex applications within your DC/OS cluster
- You will learn about administrative tasks and operational utilities you can use to manage your DC/OS cluster.
- Using Docker, Apache Mesos & DCOS you will be able to make your business operations effective and efficient. These tools will result in optimized resource utilization, automated self-healing and scalability and ultimately real and tangible cost savings.
- With more effectiveness and efficiency, in turn, you will be able to muster depth, scalability, and expanse in your software/ App projects.
Who this course is for:
- Cloud engineers
- System designers
- Software and IT architects
- CIOs, CTOs or any technology leader looking to utilize cloud computing in their organization
- Software engineers
- IT administrators
At TetraNoodle Technologies and its education arm - TetraTutorials, we work with several startups and build small to very high scale cloud solutions every day. We know what it takes to do this well.
We strive to put all our hands-on experience into these courses. Instead of superficial knowledge - we go into the depth of the topic and give you the exact - step by step blueprint on how to tame these complex topics in easy and digestible bite-sized videos. This real world knowledge enables you to grasp these concepts easily, and you can apply this learning immediately into your projects.
TetraNoodle technologies has been in the software business since 2001. We have been part of many prestigious projects and startups. Over the course of these years - we have gained a good insight into what makes for flexible, scalable and robust software solutions. We are passionate about sharing all our collective knowledge with you. As of mid-2017, we have already taught over TWENTY FIVE THOUSAND students and counting.
I grew up in a small town in India. A friendly child, my home was troubled. I withdrew into my shell, becoming aloof and angry. At age 15, I started working in a factory where I labored 12 hours/day with only $2 as a daily salary.
LAST CHANCE BLOWN
Reading business magazines in the factory corner, a dream was born. Could I improve my life? Feeling certain I was destined for freedom, for a 15-year old - it seemed like a pipe dream. Education was the only way out. My friends left for college, but I couldn’t afford to pay. Had I blown my last chance?
A YEAR’S SALARY
In 1995, a new computer institute threw its doors open in our town. Tuition was greater than a year’s salary, but I scraped together funds for the first class where I found my passion: programming. I met my wife there and we fell madly in love. Our marriage was disapproved of! Ultimately I had to run away from home with only a suitcase full of clothes. After our marriage, we traveled to Canada and started a new life.
THE NEW LIFE
I had no contacts or resources, but I was determined to improve my life. I realized education and the right training was the only way for me to achieve my goals.
Somehow I managed to acquire modest education.
From there I went on to become a technical leader and CTO in multiple startups.
All this happened because of education and training. So I am very passionate about learning and sharing knowledge.
I favor pragmatic solutions over complex ones.
I favor scrappiness over lavishness.
I favor fast execution over endless deliberation.
I favor serving the CUSTOMER over my own desires to build something cool.
I favor bending the rules (without breaking them) over abiding by them.
I believe in the resiliency and adaptability of the human race, and I know we can overcome any challenge if we work together.