
Explore how cloud computing provides on-demand, pay-as-you-go resources, with virtualization enabling scalable, self-contained instances managed by hypervisors across hardware.
Discover how cloud computing delivers cost efficiency, agility, faster time to market, scalability, reliability, and security, enabled by on-demand provisioning, pay-as-you-go pricing, and global data centers.
Explore the three cloud service models: IaaS, PaaS, and SaaS, and how they replace on-premises management with pay-as-you-go resources provisioned via a cloud console.
Explore infrastructure as a service, enabling scalable on-demand compute and storage managed by a cloud provider. Learn ecommerce, AI, and disaster recovery use cases.
Platform as a service (PaaS) lets providers manage software, security, and storage while developers build and deploy apps via internet interfaces, enabling DevOps collaboration, API development, analytics, and IoT deployments.
Discover software as a service (SaaS): a cloud-hosted, subscription-based model delivered via web, desktop, or mobile apps, with vendor-managed infrastructure, data, middleware, security, and upgrades.
Explore the three cloud service models IaaS, PaaS, and SaaS, and compare their roles from on-premises data centers to vendor-managed applications, including market share and growth trends.
Set up a Linode account by completing sign up, email confirmation, billing details, and payment, authorize a $1 hold, and access the Cloud Manager to begin exploring the dashboard.
Navigate the Linode cloud manager dashboard to access instances, block and object storage, and the marketplace, while managing your account, billing, and support.
Learn to enable two-factor authentication on a Linode account by configuring knowledge and possession factors with Google Authenticator, scanning a QR code, and validating a token.
Deploy your first Linode virtual instance by selecting an Ubuntu 20.04 image, Newark data center, and a nano one gigabyte plan, then set a strong root password and create node.
Explore the Linode instance dashboard to monitor a test VM, view analytics and network usage, manage volumes and IP addresses, configure profiles, enable backups, and adjust settings.
Securely connect to a remote L.A. instance via SSH to administer it with web-based or software-based clients, then update the OS, manage software and files, and apply security patches.
Learn the differences between password and SSH key authentication, and how private and public keys enable secure remote access, file transfers, and remote command execution.
Generate a 4096-bit ssh key pair on Windows with puttygen. Configure putty to use the private key and upload the public key to the server's .ssh/authorized_keys.
Learn to generate an ssh key pair on mac or linux with 4096-bit security, set a passphrase, and use ssh-copy-id to authenticate remotely with the Linode instance.
Learn to remotely connect to your cloud instance using the lish web console from the node cloud manager, log in, run commands, and securely terminate the session.
learn to add ssh public keys to the linode cloud manager, label and paste the key, and reuse it for future instance deployments.
Explore the Linux kernel as the core interface between hardware and processes, and Ubuntu distributions powering websites, while covering bootloader, memory and process management, security, and key Linux concepts.
Explore the Linux file system structure, the root directory, and absolute versus relative paths. Identify common directories like /bin, /home, /var, and /etc, and note root and non-root security considerations.
Learn Ubuntu maintenance commands to update a remote server, using apt update, apt upgrade, apt dist upgrade, and apt install or remove from Linux repositories.
Explore the Linux file system hierarchy and practice essential directory commands, including pwd, cd, and ls, while creating and editing a text file with nano in a root environment.
Learn to manage Linux directories by creating folders, moving and copying files (recursively), deleting items, and navigating with cd, ls, and observing colorized output.
Set the Ubuntu server hostname to Saturn and map it in /etc/hosts, then configure the time zone and synchronize local, universal, and RTC times with time date ctl.
Discover how to manage Linux user accounts by contrasting the root account with non-root users, and using groups, sudo (pseudo) and su to control permissions and security.
Create a non-root user named Bob, assign him to the pseudo group to enable superuser privileges, and verify membership before planning ssh key authentication.
Secure a non-root account with ssh key pair authentication by creating Bob's key pair, updating the authorized keys file in the dot ssh folder, and setting proper permissions.
Disable root login and password authentication to enforce ssh key authentication, restart the ssh server, and verify access with tests to ensure only key-based logins succeed.
Explore how web servers host and deliver content over the internet, using hardware and software, http requests, urls, dns, and browser clients to fetch html, images, dynamic scripts.
Explore the trade-offs of self-hosting a home web server versus using a hosting provider, covering internet and upload speeds, power use, backups, dynamic vs static IP, security, scalability, and liability.
Compare nginx and apache as dominant http web servers, highlighting architectures, static vs dynamic content handling, reverse proxy roles, modular configurations, and centralized vs decentralized directives.
Explore how databases store and retrieve data, how a database system uses a dbms to manage information, and the basics of relational SQL and NoSQL databases.
Compare relational sql databases with nosql options, outlining their structures, such as tables and primary keys, and data models like json documents, key-value and graph stores.
Compare relational SQL databases' ACID transactions with non-relational NoSQL systems' CAP-based approaches, and learn how atomicity, consistency, isolation, and durability shape data reliability.
Explore how the CAP theorem governs distributed NoSQL databases, balancing consistency, availability, and partition tolerance, while contrasting horizontal scaling with relational databases' vertical scalability.
Explore the key characteristics of SQL vs NoSQL databases, including the ACID principle, the CAP theorem, and scale-up versus scale-out with document and key-value stores.
Explore key software stacks like lamp, mean, and merlin, and learn how linux distros, apache or nginx, mysql, php, and front-end frameworks such as react and angular fit together.
Compare frameworks and libraries, explain inversion of control and the opinionated nature of frameworks, and review popular examples like Angular JS, React JS, Express JS, Django, Flask, and Laravel.
Explore the differences between server side and client side scripting languages, including HTML, CSS, and JavaScript, with examples like PHP, Python, Node.js, and practical browser interactions.
Install and configure the LAMP stack on Ubuntu using command line, including Apache, MariaDB, and PHP. Test that Apache serves the default page and verify the PHP installation.
Install a lamp stack quickly with Linode marketplace one-click apps during server deployment. Use pre-configured options that cannot be customized, then verify PHP and delete test server to avoid charges.
Log into the server, create an info.php page in the web root (/var/www/html) to verify php is running, then view it in a browser and delete the file.
Learn how PHP connects to a MariaDB database, create a database and a dedicated user, grant privileges, then use SQL to create tables, insert data, and select records.
Create a PHP script in the web root to connect to MariaDB and display all records from the name list table using nano and a for-each loop.
Set up a graphical desktop on a remote Linode instance using the glitch client or install the X FC desktop environment on Ubuntu, configuring display and starting the graphical session.
Learn foundational server security principles for hosting environments, including firewall configuration, network monitoring, and defenses against DDoS, directory traversal, and brute-force attacks on web apps.
Configure a firewall to filter incoming data and block malicious packets. Learn how network and hosted firewalls protect servers, enforcing http on port 80 and ssh on port 22.
Configure a network firewall at the cloud level to control inbound traffic, create rules to block HTTP on port 80, and test changes via the Linux cloud management console.
Change the SSH port from 22 to a custom port and restrict access to a trusted IP via the network firewall, then verify the connection.
Configure a strict Linux VM firewall by setting default inbound policy to drop and adding rules for http, https, dns, mysql/mariadb, and icmp to secure web apps.
Enable and configure a hosted firewall with UFW on Ubuntu, layering server-side rules over the network firewall to secure SSH, HTTP, HTTPS, DNS, and database traffic.
Explore scaling in cloud computing by comparing vertical upscaling of a single node and horizontal scaling through instance clusters, front end load balancers, and health checks to balance load.
Learn vertical scaling by powering off the server, resizing the plan to more ram, cpus, and storage, and powering it back on, with a note on disk auto-resize and scaling.
Scale horizontally by provisioning a two-node setup behind a node balancer, enable round-robin traffic distribution with http health checks, and verify load is evenly shared across both private-ip servers.
Swap the public IP addresses of production and test VMs using the node cloud console's IP transfer feature, then verify with hard refreshes of Apache index pages.
Master backing up cloud instances with disk images and snapshots, using manual, Linux backup service, or automated backups, while noting size limits and deployment from saved images.
Create a custom disk image with the instance manager and deploy a new node from that image, ensuring the primary disk stays under six gigabytes.
Enable the Linode backup service for an instance, configure manual and automated snapshots with rotation and costs, and learn to clone volumes for backups plus auto enrollment on deployment.
Clean up your L.A. Linode account by terminating all instances, deleting volumes, custom images, and recovery images to avoid charges, and close the account if you won't use it further.
This course offers a comprehensive guide for aspiring cloud practitioners interested in learning the complete lifecycle of virtual instance deployment and configuration on popular cloud platforms like AWS and Linode. The course starts right from the basics, where we explore various cloud computing service models. This includes infrastructure as a service, platform as a service, and software as a service. From there students gain hands-on experience with creating and administering remote virtual instances, complete with Ubuntu, Apache, MariaDB, and PHP. Students will learn the difference between popular web servers like Apache and NGINX, along with a detailed overview of various database management systems. This includes both SQL and NoSQL databases, in addition to database transaction standards such as ACID and CAP Theorem. In addition to a theoretical deep dive, the course demonstrates how to install, configure, and secure LAMP stack on Ubuntu for hosting dynamic, database driven web apps. We offer a detailed segment on server security, where students will configure both software and network firewalls for their instance using strict firewall policies, UFW and custom SSH ports. At this stage students will also learn to scale their servers both vertically and horizontally using application load balancers.
The second half of the course provides a comprehensive guide to Amazon Web Services. We start with demonstrating how to setup, secure, and navigate an AWS account. This includes setting up billing alerts and multi-factor authentication. From there, we take a deep dive into AWS Identity and Access management for enhanced account security, and the management of user accounts for various AWS services. Here we explore IAM User management and permissions, IAM Groups, IAM Policies, and access key rotation. Following the IAM section, we’ll jump into the Amazon Elastic Compute Cloud (EC2) service. In this module students lean to deploy virtual instances on AWS using Amazon Machine Images, Elastic IPs, and Launch Templates. We will also explore IAM roles for EC2, EC2 Security Groups, SSH key pair authentication, and remote administration using both terminal and EC2 Instance connect.
As you can see this course covers a tremendous bit of ground and we hope you’re just as excited about this course as we are, if so - hit that enroll button and let’s get started.