GitLab Administration
May 2, 2023
This tutorial is adapted from the Web Age course https://www.webagesolutions.com/courses/WA3255-introduction-to-gitlab-administration.1.1 GitLab AdministratorUsing GitLab.com
Only GitLab team members have access to administration tools and settings.Using a self-managed GitLab instance
You must learn how to administer.
Deploy an Application Using ArgoCD
April 13, 2023
In this tutorial, we will deploy an application using ArgoCD. It is a multi-step process. Add a deployment manifest file to the Git repository.Point ArgoCD to the Git repository. It will begin monitoring changes.When a change is detected you can manually synchronize. This will pull the deployment manifest file and apply it to the Kubernetes cluster.
For ArgoCD training for your team, please visit our
Introduction to ArgoCD Tutorial
April 13, 2023
This Introduction ArgoCD tutorial walks you through implementing GitOps principles into your organization to get the most out of your Kubernetes cluster administration.
For ArgoCD training for your team, please visit our GitOps Using ArgoCD course or Contact Us for Group Training Information.1.1 What is ArgoCD?
How to Register a GitLab Runner?
January 16, 2023
This tutorial is adapted from the Web Age course https://www.webagesolutions.com/courses/WA3243-advanced-gitlab-administration.Part 1 – Gather Necessary Info
We will need the URL of GitLab server and a runner registration token.
1. Log into GitLab as root.
2. In the browser, click the hamburger icon to expose the m
Create a Project in GitLab
December 30, 2022
This tutorial is adapted from the Web Age course https://www.webagesolutions.com/courses/WA3243-advanced-gitlab-administration.
A Git repository is called a project in GitLab. That is because a project is much more than a file repository. You can also define the CI/CD pipeline for the application in a project.
In this tutorial, we will create a new project. We wi
Introduction to GitLab CI/CD
December 29, 2022
This tutorial is adapted from the Web Age course https://www.webagesolutions.com/courses/WA3243-advanced-gitlab-administration.1.1 Continuous Integration (CI)
Every time a developer pushes code, CI ensures quality of the software by
running a few tasks:Compile and build the software to ensure no compilation and bui
Introduction to Harbor
December 9, 2022
1.1 What is Harbor?Harbor is a container image registry software. You can use it to run an image registry on the premises.It is open source.
Written in Go.Web site: https://goharbor.io/Git repo: https://github.com/goharbor/harborIt is compatible with the docker CLI. That means you can push and pull images using the docker command line.1.2 Benefits of Harbor
<
Deploy an Image from Harbor
December 9, 2022
In this tutorial, you will learn to deploy the image in the K8s cluster.
This is a two step process:Create a secret that holds the Harbor registry user ID and password.Apply a deployment to the cluster. Refer to the secret and the image name from
the deployment YAML.Part 1 – Create the Secret
There are several different ways to create a secret that holds the Harbor user ID and
password. We will use the DockerR
Deploy an Application Using Flux
December 5, 2022
In this tutorial, we will learn how to deploy an application using Flux.Part 1 – Install Flux
We will now install Flux.
1. Run this command to install Flux:curl -s https://fluxcd.io/install.sh | sudo bash
[Enter wasadmin for password]
We will now configure Flux. This does mainly two things:Installs various components inside Kubernetes. This is how the Flux system act
Prepare for Deploying an Application to Kubernetes
December 1, 2022
Flux uses GitOps principles to deploy applications to Kubernetes. Main benefits of this are:All k8s configuration yaml files are version controlled. We know exactly what changes were applied and when.Very few admin users will need access to the k8s cluster. All changes happen via pushing config files to a Git repo. This makes the cluster more secure.
Before we can deploy our application, we will do a few prerequisite work.Part 1 R
Introduction to GitOps
November 28, 2022
1.1 What is GitOps?Modern container orchestration platforms like Kubernetes, OpenShift, and Rancher require a lot of configuration to define and manage clusters, application deployments, and environments. GitOps is the practice of using Git to version control these configurations.Developers have been using Git to version control their code. GitOps extends the same principles and benefits to infrastructure management.Before GitOps: DevOps users
Introduction to Flux
November 28, 2022
1.1 What is Flux?
Flux is a tool that helps you adopt GitOps operations in a Kubernetes cluster.Web site: https://fluxcd.io/GitHub repo: https://github.com/fluxcd/flux2It is written in Go.A project supported by Cloud Native Computing Foundation https://www.cncf.io/1.2 Key Components of Flux
Sources – A source represents a Git repository. It is defined in a
Working with GitLab.com
August 29, 2022
Author: Kevin Clements
This tutorial is adapted from the Web Age course https://www.webagesolutions.com/courses/WA3212-ci-cd-with-gitlab.
In this tutorial, you will connect to GitLab website and run through creating a new Project.Part 1 – Connect to GitLab
In this part, you will install the latest version of from git-scm.com and update git.
1. O
Introduction to CI/CD and GitLab
August 29, 2022
Author: Kevin Clements
This tutorial is adapted from the Web Age course https://www.webagesolutions.com/courses/WA3212-ci-cd-with-gitlab.1.1 Foundation of Agile AppDev
Agile Development begins with Extreme Programming (XP). It was invented/Promoted by Kent Beck and associates.
Beck describes XP as:A philosophy of software development based on the values of
Rancher Workload Management
November 18, 2021
Author: Michael Forrester
Management and Configuration in Rancher (core) falls into a few major
categories after Rancher is deployed. Namely:User Interface and Command Line InterfaceDeployments and Workload TypesNamespaces and ProjectsScaling ApplicationsStorage for WorkloadsNetworking for Workloads
We will cover each of these in detail in web-based User Interface and the Command Line in separate
Security Using XRay
October 22, 2021
Author- Faheem Javed
This tutorial is adapted from the Web Age course Introduction to Devsecops.1.1 DevOps
Deploying and Exposing Applications on AKS
October 5, 2021
Author: Faheem Javed
This tutorial is adapted from the Web Age course Kubernetes for Developers on AKS Training.
Exploring Chef Recipes and Cookbooks
October 1, 2021
Author: Fahim Javed
Disclaimer- You will need a specific setup in order to follow all the steps in the tutorial. At Web Age, this setup is provided to students by setting up the VMs and sharing them with students. Sharing VMs in the blog is not possible as it is proprietary, but this tutorial will give y
Unit Testing in Chef
October 1, 2021
Author: Fahim Javed
Disclaimer- You will need a specific setup in order to follow all the steps in the tutorial. At Web Age, this setup is provided to students by setting up the VMs and sharing them with students. Sharing VMs in the blog is not possible as it is proprietary, but this tutorial will give y
Basic Automation with Vagrant and Ansible
September 21, 2021
Author: Mark Pawlowski
Disclaimer- You will need a specific setup in order to follow all the steps in the tutorial. At Web Age, this setup is provided to students by setting up the VMS and sharing them with students. Sharing VMs in the blog is not possible as it is proprietary, but this tutorial will give you a good sense to understand the topic.
This tutorial is adapted from the Web-Age course
Kubernetes Architecture
September 25, 2020
This tutorial is adapted from Web Age course Docker and Kubernetes Administration.1.1 Architecture Diagram
In this tutorial, we will review various parts of the following architecture diagram:
Kubernetes Security
September 25, 2020
This tutorial is adapted from Web Age course Kubernetes for Developers Training.1.1 Security Overview
Security is critical to production deployments. Kubernetes offers several features to secure your environment:
authentication
author
What is Jenkins Templating Engine(JTE)?
February 25, 2020
1.1 Why JTE?
Modern Jenkins use consists of defining and using pipelines. Pipelines define and control a specific set of operations in the CI/CD process. These operations call out specific tools and directories. Pipelines are not reusable across projects. JTE uses more generic templates that may be reused across projects. Traditional pipelines are not reusable because they are hard coded.1.2 What is JTE
JTE allows the definition of pipeline templates.&nb
What is Kubernetes?
February 20, 2020
This tutorial is adapted from Web Age course Microservices Development Bootcamp with Immersive Project.1.1 What is Kubernetes
Kubernetes is Greek for “helmsman” or “pilot”. It was originally founded by Joe Beda, Brendan Burns and Craig McLuckie. Afterward, other Google engineers also joined the project.&nbs
What is Docker?
February 19, 2020
This tutorial is adapted from Web Age course Microservices Development Bootcamp with Immersive Project.1.1 What is Docker
Docker is an open-source (and 100% free) project for IT automation. You can view Docker as a system or a platform for creating virtual environments which are extremely lightweight virtual machines. Doc
Current Trends in Infrastructure Training
January 17, 2020
Due to the popularity of Infrastructure concepts like DevOps, CI/CD, Automation, Cloud, and Containerization, here is the general industry trend seen among infrastructure over the last few years. Overall
There is a general trend towards more automation and CI/CD due to the insertion of Dev Ops practices and ideas in most organizations. Couple this with the move towards Agile and DevOps and you are seeing the infrastructure position ,whether it is titled&
Using Prometheus for Monitoring
July 30, 2019
This tutorial is adapted from Web Age course Microservices Development Bootcamp with Immersive Project.
In this tutorial, you will use Prometheus to monitor a Spring Boot application. You will configure the Spring Boot application to enable metrics gathering via Spring Boot Actuators and expose Prometheus endpoint. Then, you will run P
Using Jaegar for Tracing
July 30, 2019
This tutorial is adapted from Web Age course Microservices Development Bootcamp with Immersive Project.
In this tutorial, you will implement instrumentation using Jaegar. You will modify an existing Spring Boot application to add tracing to it.
Create a Jenkins Pipeline
July 3, 2019
In this tutorial, you will explore the Pipeline functionality.
At the end of this tutorial, you will be able to:
Create a simple pipeline
Use a ‘Jenkinsfile’ in your project
Use manual input steps in a pipelinePart 1 – Create a Simple Pipeline
We can create a pipeline j
Create a Jenkins Job
July 3, 2019
In this tutorial, you will create and build a job in Jenkins.
Jenkins supports several different types of build jobs. The two most commonly-used are the freestyle builds and the Maven 2/3 builds. The freestyle projects allow you to configure just about any sort of build job, they are highly flexible and very configurable. The Maven 2/3 builds understand the Maven project structure, and can use this to let you set up Maven build jobs with less effort
Version Control- Git
June 28, 2019
In this tutorial, you will learn to install, configure, and use Git on Linux.Part 1 – Launch terminal
In this part you will launch the Linux terminal.
1. Open the Terminal window.
Alternatively, you can press Ctrl+Alt+T to access the terminal.Part 2 – Install Git
1. Update APT repo
Best & Latest Tools in DevOps
April 22, 2019
As DevOps continues to gain tons of momentum in the IT world, it’s time you think about how it can help your team stay on top of the digital game. But if you’re new to DevOps, it may be challenging to figure out which tools are best for your business goals and processes. We’ve compiled a list of the best and latest tools in DevOps, so you can see the ways in which each
A Deeper Dive into DevOps
December 10, 2018
How Long Does it Take to Learn DevOps?
Are you a developer looking to shift your career to a DevOps model? Maybe you’re a fully trained Ops person who wants to know what DevOps is all about. Or maybe you’re neither. Whatever the case may be, if you’re interested in learning DevOps, there’s a couple things you should know. The first: DevOps is not a role. It’s a culture, an end-to-end process, and an implementation of the best practices by using various tools.
But what exac
Configuration Management – Just Do It!
March 29, 2017
Configuration Management, as applied in DevOps, is the practice of using tools to manage the configuration of our technical architecture. Put simply, we document the desired state of one or more servers in a machine-readable form, and then use a configuration management tool (e.g. Chef, Puppet, Salt, or Ansible) to setup the real items to match the configuration.
Why? As with many things, you might think “I barely have time to setup this server manually, never mind write a script for it