Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A REQUEST #3

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# linux-bootcamp
Linux Cloud Engineer Bootcamp
Repo finally done
moving to next phase now

53 changes: 52 additions & 1 deletion Week 1/LAB1/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,55 @@ Quickstart: Create a Linux VM
* https://docs.microsoft.com/en-us/azure/virtual-machines/linux/quick-create-cli

Quickstart for Bash in Azure Cloud Shell
* https://docs.microsoft.com/en-us/azure/cloud-shell/quickstart
* https://docs.microsoft.com/en-us/azure/cloud-shell/quickstart


**ANSWERS TO MY WEEK1 LAB1**
1. launching Azure Cloudshell
# Definition:
Azure Cloud Shell is a shell used to manage and develope Resources.
i launched Azure Cloud Shell by clicking on the square with a "greater than" sign at the top right side of my Azure portal, a new environment opened up for me to type in my command after running some connections.

2. Creating a Resource group
# Definition
Resource Group is a tool that holds related related resources for an Azure solution.

I created a resource group by entering the following command in my Cloud Shell:
az group create -- HarryVM_group -- location eastus

3. Creating a Virtual Machin
# Definition:
Virtual Machines are computer files typically called an image which behaves like an actual computer, it is one of the files which contains everything and runs in Windows, Linux etc.

I created my Virtual Machine by running the following command on my Cloud Shell:

az vm create \
--resource-group HarryVM_group \
--name HarryVM \
--image UbuntuLTS \
--admin-username Harry \
--generate-ssh-keys

4. Opening port 80 for web traffic

I opened port 80 on cloud Shell by running th below command:

az vm open-port --port 80 --resource-group HarryVM_group --name HarryVM

5. Connecting to my Virtual Machine

I connected to my Virtual Machine using the below command on my cloud shell:

ssh [email protected]

6. Web Server Installation

To install my Web Server I ran the following command:

sudo apt-get -y update
sudo apt-get -y install nginx





80 changes: 80 additions & 0 deletions Week 1/LAB2/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,86 @@

### Notes:

# ANSWERS TO MY WEEK1 LAB2

I created a Resource Group, VM and connected to my VM as shown in lab1 above.

4. UNDERSTANDING VM IMAGES

In one sentence, you can think of VM Images as a more comprehensive image for Microsoft Azure Virtual Machines. The new and improved VM Image encompasses the full definition of a virtual machine’s storage, containing the OS disk and all data disks.

It captures the disk properties (such as host caching) you need in order to deploy a VM in a reusable unit. Similar to OS Images, a VM Image is a collection of metadata and pointers to a set of VHDs (one VHD per disk) stored as page blobs in Azure Storage.

A VM Image containing a single VHD with a generalized operating system is essentially the OS image you are familiar with today. Over time, you will notice that VM Images will become the main image construct for Microsoft Azure Virtual Machines.

There are two types of VM Images – generalized and specialized – each serving their own purpose. A generalized VM Image contains an OS disk, which, as the name suggests, has been generalized (for Windows, you have run Sysprep and for Linux, you have executed ‘waagent –deprovision’) and needs to be provisioned during deployment time. OS Images today are generalized. This type of VM Image is meant to be used as a “model” to quickly stamp out similar virtual machines, such as scaling out a front-end to your application in production or spinning up and tearing down similar development and test environments quickly.

A specialized VM Image contains an OS disk, which is already provisioned. It is similar to a disk today in that it is “ready-to-use”, but unlike a disk, the VHDs of a VM Image are treated as read-only and copied when deploying a new virtual machine. A specialized VM Image is meant to be used as a “snapshot” to deploy a VM to a good known point in time, such as checkpointing a developer machine, before performing a task which may go wrong and render the virtual machine useless. It is not meant to be a mechanism to clone multiple identical virtual machines in the same virtual network due to the Windows requirement of Sysprep for image replication.


5. UNDERSTANDING VM SIZES

Virtual machine size basically defines the amount of resources it could consume. The machine size defines the number of CPU cores, memory size, temporary disk size, etc. The size of the virtual machine can be changed anytime, even after the machine is deployed.

The cost of the size may change within different locations/regions. A region is the geographic area grouping data centers in that location. It gives users the ability to run applications where needed.

WE HAVE SIX TYPES OF VM SIZES WHICH ARE:

1. General purpose B,
Dsv3, Dv3, Dasv4, Dav4, DSv2, Dv2, Av2, DC, DCv2, Dv4, Dsv4, Ddv4, Ddsv4, Dv5, Dsv5, Ddv5, Ddsv5, Dasv5, Dadsv5.

FUNCTION: Balanced CPU-to-memory ratio. Ideal for testing and development, small to medium databases, and low to medium traffic web servers.

2. Compute optimized
F, Fs, Fsv2.

FUNCTIONS:
FX High CPU-to-memory ratio. Good for medium traffic web servers, network appliances, batch processes, and application servers.


3. Memory optimized
Esv3, Ev3, Easv4, Eav4, Ev4, Esv4, Edv4, Edsv4, Ev5, Esv5, Edv5, Edsv5, Easv5, Eadsv5, Mv2, M, DSv2, Dv2

FUNCTIONS:
High memory-to-CPU ratio. Great for relational database servers, medium to large caches, and in-memory analytics.

4. Storage optimized
Lsv2

FUNCTIONS:
High disk throughput and IO ideal for Big Data, SQL, NoSQL databases, data warehousing and large transactional databases.

5. GPU
NC, NCv2, NCv3, NCasT4_v3, ND, NDv2, NV, NVv3, NVv4, NDasrA100_v4, NDm_A100_v4

FUNCTIONS:
Specialized virtual machines targeted for heavy graphic rendering and video editing, as well as model training and inferencing (ND) with deep learning. Available with single or multiple GPUs.

6. High performance compute
HB, HBv2, HBv3, HC, H

FUNCTIONS:
Our fastest and most powerful CPU virtual machines with optional high-throughput network interfaces (RDMA).

6. UNDERSTANDING VM POWER STATES

VM POWER STATES are simply different power phases that a VM can exisit, we have 6 types of power states which indicates entirely different states of the VM.

There are six power states that a VM can exist in:

1. Starting: Indicates that the VM is being started.
2. Running: Indicates that the VM is running.
3. Stopping: Indicates that the VM is being stopped.
4. Stopped: Indicates that the VM is stopped. Note that VMs in the stopped state still incur compute charges.
5. Deallocating: Indicates that the VM is being deallocated.
6. Deallocated: Indicates that the VM is completely removed from the hypervisor.

7. MANAGEMENT TASKS





Quickstart: Create a Linux VM
* https://docs.microsoft.com/en-us/azure/virtual-machines/linux/tutorial-manage-vm

Expand Down
24 changes: 24 additions & 0 deletions Week 1/LAB3/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,30 @@

### Notes:

ANSWRES TO WEEK1 LAB3

1. DEFAULT AZURE DISKS

When an Azure virtual machine is created, two disks are automatically attached to the virtual machine.

Operating system disk - Operating system disks can be sized up to 2 TB, and hosts the VMs operating system. The OS disk is labeled /dev/sda by default. The disk caching configuration of the OS disk is optimized for OS performance. Because of this configuration, the OS disk should not be used for applications or data. For applications and data, use data disks, which are detailed later in this tutorial.

Temporary disk - Temporary disks use a solid-state drive that is located on the same Azure host as the VM. Temp disks are highly performant and may be used for operations such as temporary data processing. However, if the VM is moved to a new host, any data stored on a temporary disk is removed. The size of the temporary disk is determined by the VM size. Temporary disks are labeled /dev/sdb and have a mountpoint of /mnt.

2. AZURE DATA DISKS

This is an additional used to install applications and sore data, they are used isncases where durable and responsive data storage is desired.

3. VM DISK TYPES

Azure provides two types of disks.

Standard disks - backed by HDDs, and delivers cost-effective storage while still being performant. Standard disks are ideal for a cost effective dev and test workload.

Premium disks - backed by SSD-based, high-performance, low-latency disk. Perfect for VMs running production workload. VM sizes with an S in the size name, typically support Premium Storage. For example, DS-series, DSv2-series, GS-series, and FS-series VMs support premium storage. When you select a disk size, the value is rounded up to the next type. For example, if the disk size is more than 64 GB, but less than 128 GB, the disk type is P10.

The available types of disks are ultra disks, premium solid-state drives (SSD), standard SSDs, and standard hard disk drives (HDD).

Quickstart: Manage Azure disks
* https://docs.microsoft.com/en-us/azure/virtual-machines/linux/tutorial-manage-disks

Expand Down
14 changes: 14 additions & 0 deletions Week 1/LAB4/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,20 @@

### Notes:

# ANSWERS TO WEEK 1 LAB 4

1. Supported SSH key formats

Azure currently supports SSH protocol 2 (SSH-2) RSA public-private key pairs with a minimum length of 2048 bits. Other key formats such as ED25519 and ECDSA are not supported.

2. Creating an SSH public pair.

on my cloudshell I created ssh public pair by running the following commad:
az vm create --name HarryVM --resource-group HarryVM_group --image UbuntuLTS --generate-ssh-keys

3.


Quickstart: SSH for Linux VMs
* https://docs.microsoft.com/en-us/azure/virtual-machines/linux/mac-create-ssh-keys

Expand Down