diff --git a/content/Azure/01_intro_to_cloud_console.ipynb b/content/Azure/01_intro_to_cloud_console.ipynb index 9c7bd33..b0fab9c 100644 --- a/content/Azure/01_intro_to_cloud_console.ipynb +++ b/content/Azure/01_intro_to_cloud_console.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "1334c396", + "id": "a13f1d28", "metadata": {}, "source": [ "# Introduction to the Azure Cloud Console\n", @@ -38,7 +38,7 @@ }, { "cell_type": "markdown", - "id": "f1a257c4", + "id": "50435734", "metadata": {}, "source": [ "## Accounts (Authentication and Identity) & login\n", @@ -46,7 +46,7 @@ "The (Azure) **Account** is the identity used to access the Azure web console and is in the form of an email address and is associated with an individual (the *who* is you!). This is typically the account you use to access Azure services associated with your institution and not your personal account. We will now login to the Azure web console and verify our account.\n", "\n", " * Login to the web console with your (Azure) account by going to [https://portal.azure.com/](https://portal.azure.com/)\n", - " * Fill in your username and password (assigned to you in the an email from CLASS or perhap from your institution). \n", + " * Fill in your username and password (assigned to you in the email from CLASS or perhaps from your institution). \n", " * Find your user/account under the \"Avatar\" in the top right corner of the console (see number 5 below).\n", "\n", "You are now logged in. Welcome to the first step of your cloud journey!" @@ -54,7 +54,7 @@ }, { "cell_type": "markdown", - "id": "888bdfdc", + "id": "4890c114", "metadata": {}, "source": [ "```{admonition} Exercise\n", @@ -81,7 +81,7 @@ }, { "cell_type": "markdown", - "id": "bc064a57", + "id": "9da5a232", "metadata": {}, "source": [ "```{admonition} Exercise\n", @@ -96,7 +96,7 @@ }, { "cell_type": "markdown", - "id": "ac7b88ff", + "id": "0ba10e1f", "metadata": {}, "source": [ "## Services\n", @@ -107,7 +107,7 @@ "day activities to make the most out of the cloud and to help with the reproducibility of research and teaching.\n", "\n", "The Navigation Menu (number 1 below) is used to navigate to the various products, which are also called services. We can also use the \n", - "Search bar (number 2 below) is find services.\n", + "Search bar (number 2 below) to find services.\n", "\n", "Navigation Menu\n", "\n", @@ -121,7 +121,7 @@ }, { "cell_type": "markdown", - "id": "880a3b4d", + "id": "c6f395df", "metadata": {}, "source": [ "```{admonition} Exercise\n", @@ -134,7 +134,7 @@ }, { "cell_type": "markdown", - "id": "3e93beab", + "id": "5a852547", "metadata": {}, "source": [ "## Everything Else\n", @@ -152,17 +152,17 @@ "**2. Search bar**\n", ": You can also use the search bar to find a particular service or offering that you are \n", "interested in. For example, if you wanted to provision or utilize a \"virtual machine\", \n", - "you can try using the search bar to search for \"Virtual Machines\". As you start typing \n", - "the words starting with \"V\" will auto fill. Choose Virtual Machines from the options displayed.\n", + "you can try using the search bar to search for \"Virtual Machines\". As you start typing, \n", + "the words starting with \"V\" it will auto fill. Choose Virtual Machines from the options displayed.\n", "\n", "**3. Cloud Shell**\n", - ": The cloud shell button invokes an interactive shell environment for either bash or PowerShell. The first time you invoke cloud shell you will also creare persistent storage specifically for cloud shell. The cloud shell comes with linux tools like bash, sh, & dig as well as the Azure CLI. Cloud shell also has editors like VIM and emacs, and tools like git, make, and configuration tools like ansible & terraform already installed. Language support for python, go, java, & PowerShell are also preinstalled. Azure Cloud Shell runs on Ubuntu with persistent storage.\n", + ": The cloud shell button invokes an interactive shell environment for either bash or PowerShell. The first time you invoke cloud shell you will also create persistent storage specifically for cloud shell. The cloud shell comes with linux tools like bash, sh, & dig as well as the Azure CLI. Cloud shell also has editors like VIM and emacs, and tools like git, make, and configuration tools like ansible & terraform, already installed. Language support for python, go, java, & PowerShell are also preinstalled. Azure Cloud Shell runs on Ubuntu with persistent storage.\n", "\n", "**4. Directories & Subscriptions**\n", - ": This button will show the current Subsciption and Active Directory (not covered) associated with your account. For these episodes you can think of a Subscription as your your billing account ((For more information on Active Directories and Subscriptions, see the *glossary of Azure terms* link above). You use this dropdown to verify that are using the right subscription.\n", + ": This button will show the current Subscription and Active Directory (not covered) associated with your account. For these episodes you can think of a Subscription as your your billing account (For more information on Active Directories and Subscriptions, see the *glossary of Azure terms* link above). You use this dropdown to verify that you are using the right subscription.\n", "\n", "**5. IAM Username and Organization**\n", - ": The menu bar on the console also lists your username and the current organization that you are logged into. IAM is short for Identity and Access Management. Identity is a mechanism to authenticate users (e.g. password) and Access is a mechanism for authorizing what kinds of services users have access to. In the creation of an IAM user, the administrator (overlord) of the account assigns a particular permission scope (in Azure this is known as roles) to control access to a particular set of services and also assigned a password to authenticate user login. IAM is a key component in managing security on the cloud.\n" + ": The menu bar on the console also lists your username and the current organization that you are logged into. IAM is short for Identity and Access Management. Identity is a mechanism to authenticate users (e.g. password) and Access is a mechanism for authorizing what kinds of services users have access to. In the creation of an IAM user, the administrator (overlord) of the account assigns a particular permission scope (in Azure this is known as roles) to control access to a particular set of services and also assign a password to authenticate user login. IAM is a key component in managing security on the cloud.\n" ] }, { @@ -181,17 +181,24 @@ }, { "cell_type": "markdown", - "id": "e0b23f01", + "id": "1d9aa8b9", "metadata": {}, "source": [ "## Overview of what we will do in this lesson\n", "\n", - "We are now ready to move on with the rest of the Azure essentials lessons. Here is an overview of what we are \n", - "going to do. First we will create a Virtual Machine (VM) and in doing so create a Resource Group. Then we will \n", - "create a Storage Account and in that a blob storage container. After that we will create a blob and upload it to\n", - "the blob contaioner.\n", + "We are now ready to move on with the rest of the Azure essentials lesson. Here is an overview of what we are \n", + "going to do. First we will create a Resource Group. Then we will \n", + "create a virtual machine (VM), a Storage Account, and a blob \n", + "storage contianer. After that we will create a blob and upload it to\n", + "the blob contianer.\n", "![Azure-essentails-outline](images/azure-essentials-outline.png)" ] + }, + { + "cell_type": "markdown", + "id": "66dfaa3a", + "metadata": {}, + "source": [] } ], "metadata": { diff --git a/content/Azure/02_intro_cloudshell_sshkey.ipynb b/content/Azure/02_intro_cloudshell_sshkey.ipynb index 674e6a2..6d050f3 100644 --- a/content/Azure/02_intro_cloudshell_sshkey.ipynb +++ b/content/Azure/02_intro_cloudshell_sshkey.ipynb @@ -30,7 +30,7 @@ }, { "cell_type": "markdown", - "id": "411b2b06", + "id": "5accf0bf", "metadata": {}, "source": [ "# Resource Group\n", @@ -39,40 +39,39 @@ "logical container that associates multiple resources so you can manage them as a \n", "single entity. The resource group collects metadata from each individual resource \n", "to facilitate granular management. This not only has advantages for administration \n", - "and cost management, but also for applying role-based access controls." + "and cost management but also for applying role-based access controls." ] }, { "cell_type": "markdown", - "id": "8baedfad", + "id": "5df56e70", "metadata": {}, "source": [ - "# Create a Ressource Group\n", + "# Create a Resource Group\n", "\n", - "To create a Resource Group from the console we will click on the pull down menu on the \n", + "To create a Resource Group from the console, click the pull down menu on the \n", "left (you can also type \"resource group\" in the search bar to find this service). Click on \"Resource Groups\" from the menu. This will bring you to the \n", "\"Resource Groups\" page. Click the \"+ Create\" button. Under the \"Basic\" tab you \n", "should see your \"Subscription\" (verify that you are using the correct subscription) \n", - "and under that \"Resource group\". In the \"Resource group\" window, enter \"essentials-RG\". \n", - "Under \"Resource details\" verify that you are in \"(US) East US\". If not, use the pull down \n", - "menu on the right side of the \"Region\" window and scroll down untill you find \n", - "\"(US) East US\". Now click the \"Review + create\" button. Once you see a green check mark \n", + "and under that you will see \"Resource group\". In the \"Resource group\" window, enter **essentials**. \n", + "Under \"Resource details\", choose \"(US) East US\" for the region. We will put all of \n", + "our resources in the \"(US) East US\" region. Now click the \"Review + create\" button. Once you see a green check mark \n", "with \"Validation passed\", click create. We will use this resource group for the remainder \n", - "of the lessons." + "of the lesson." ] }, { "cell_type": "markdown", - "id": "0e8cc984", + "id": "8d4a9865", "metadata": {}, "source": [ "## Cloud Shell\n", - "The cloud shell button invokes an interactive shell environment for either bash or PowerShell. The first time you invoke cloud shell you will also creare persistent storage specifically for cloud shell. The cloud shell comes with linux tools like bash, sh, & dig as well as the Azure CLI. Cloud shell also has editors like VIM and emacs, and tools like git, make, and configuration tools like ansible & terraform already installed. Language support for python, go, java, & PowerShell are also preinstalled. Azure Cloud Shell runs on Ubuntu 16.04 LTS with persistent storage." + "The cloud shell button invokes an interactive shell environment for either bash or PowerShell. The first time you invoke cloud shell you will also create persistent storage specifically for cloud shell. The cloud shell comes with linux tools like bash, sh, & dig as well as the Azure CLI. Cloud shell also has editors like VIM and emacs, and tools like git, make, and configuration tools like ansible & terraform already installed. Language support for python, go, java, & PowerShell are also preinstalled. Azure Cloud Shell runs on Ubuntu 16.04 LTS with persistent storage." ] }, { "cell_type": "markdown", - "id": "8d22f790", + "id": "597fab30", "metadata": {}, "source": [ "## Open the Cloud Shell\n", @@ -80,8 +79,8 @@ "The Cloud Shell is an easy way to access Comand Line Interface (CLI) commands in a web browser. Under the hood Cloud Shell is Common Base Linux Delridge (CBL is a free and open-source, Linux distribution that Microsoft has developed) OS running in a container with 5GB of persistent storage and a lot of other useful tools (git, jq, Docker, etc.) installed by default.\n", "To use the Azure Cloud Shell:\n", " \n", - " * Open up a Cloud Shell by clicking on the cloud shell icon (greater than sign followed by underscore) on the blue bar just to the right of search window. On first launch, Cloud Shell prompts to create a resource group, storage account, and Azure Files share on your behalf. This will open a cloud shell at the bottum of your browser window. You can choose a bash shell or Power shell.\n", - " * If you want a new cloud shell in a different window, click the new cloud shell button (file icon with + in upper right corner) on the cloud shell menu bar. This will create a new cloud shell window tab. **Note:** you may need to allow popups or enable popups for this website depending on the browser you use. You can also pull up the tab to increase the shell screen size.\n", + " * Open up a Cloud Shell by clicking on the cloud shell icon (greater than sign followed by underscore) on the blue bar just to the right of search window. On first launch, the Cloud Shell will prompt you to create a resource group, storage account, and Azure Files share on your behalf. This will open a cloud shell at the bottom of your browser window. Make sure to choose bash shell from the options if not already chosen.\n", + " * If you want a new cloud shell in a different window, click the new cloud shell button (file icon with + in upper right corner) on the cloud shell menu bar. This will create a new cloud shell window in a new tab in your browser. **Note:** you may need to allow popups or enable popups for this website depending on the browser you use. You can also pull up the Cloude Shell bar to increase the shell screen size.\n", " * To quit cloud shell type exit at the prompt.\n", "\n", "To use the Cloud Shell:\n", @@ -91,24 +90,24 @@ " * Choose *bash* to continue.\n", " * Then it will ask you to create a storage account for persistant storage for your cloud shell experience.\n", "![welcome-to-cloud-shell-storage](images/welcome-to-cloud-shell-storage.png)\n", - " * Click create storage (The storge will encurre a nomial fee)\n", + " * Click create storage (The storage will incur a nominal fee)\n", " * Once the Cloud Shell is open and has initialized, you should see \"Welcome to Azure Cloud Shell\".\n", " * Click the middle box icon on the right side of the Cloud Shell bar to maximize the screen. You can find the correct icon by hovering over the icons to see their names.\n", - " * Note: You can open the Cloud Shell in a new tab by clicking on the **Open new session** icon (looks like a box with a \"+\") in the middle of the Cloud Shell bar.\n", + " * Note: You can open the Cloud Shell in a new browser tab by clicking on the \"Open new session\" icon (looks like a box with a \"+\") in the middle of the Cloud Shell bar.\n", "\n", "![Azure-cloud-shell](images/Azure-cloud-shell.png)\n", "\n", - "You will notice that in the upper left corner of the cloud shell there is a pull down menu. This should be set to **bash** (The other option is PowerShell). We will now prepare for the next lessons by creating an ssh key." + "You will notice that in the upper left corner of the cloud shell there is a pull down menu. This should be set to **bash** (The other option is PowerShell). We will now prepare for the next episode by creating an ssh key." ] }, { "cell_type": "markdown", - "id": "5c503ac8", + "id": "96fcff2a", "metadata": {}, "source": [ "## Generate ssh keys\n", "\n", - "Now we will create a ssh key pair to use with some of the other lessons (e.g. we need a ssh key when creating a VM in order to login securely).\n", + "Now we will create a ssh key pair to use with some of the other episodes (e.g. we need a ssh key when creating a VM in order to securely login).\n", "\n", "At the **$** prompt, enter **ssh-keygen** and follow the prompts." ] @@ -122,7 +121,7 @@ "source": [ "$ssh-keygen\n", "Generating public/private rsa key pair.\n", - "Enter file in which to save the key (/home/john/.ssh/id_rsa):" + "Enter file in which to save the key (/home//.ssh/id_rsa):" ] }, { @@ -168,14 +167,14 @@ }, { "cell_type": "markdown", - "id": "d318911c", + "id": "1fd46460", "metadata": {}, "source": [ "Later during the VM (Virtual Machine) creation process we will use this key to provide \n", "secure login access to your VM.\n", "\n", "First, you will need to Cut & Paste the public key you just created. To Cut (copy) your \n", - "public key to your edit buufer, run the following command." + "public key to your clipboard, run the following command." ] }, { @@ -190,33 +189,36 @@ }, { "cell_type": "markdown", - "id": "24fa2f52", + "id": "458dfc14", "metadata": {}, "source": [ "Highlight the output string with your cursor starting with ssh-rsa until the end of the \n", - "string (white test) and before you come to the green command prompt. With the public key \n", - "highlighted, use the copy command (depending on OS) to put it in your edit buffer \n", + "string (white text) and before you come to the green command prompt. With the public key \n", + "highlighted, use the copy command (depending on OS) to put it in your clipboard \n", "(i.e. for mac use command c)." ] }, { "cell_type": "markdown", - "id": "5bd9e57b", + "id": "46db1f1e", "metadata": {}, "source": [ "Now go back to the console and in the search bar type \"ssh\". Under Services, click on the \n", "\"SSH keys\" service. This will bring you to the SSH key service page. Click Create to go \n", - "to the \"SSH key\" creation page. First, verify the you are using the correct subsciption. \n", + "to the \"SSH key\" creation page. First, verify that you are using the correct subscription. \n", "In the \"Resource group\" window, use the pull down menu to the right and choose the \n", - "\"essentials-RG\" that we created earlier. Under Region, make sure you are in \"(US) East US\". \n", - "Next, in the \"Key pair name\" window enter \"essentials-public-key\". Under the \n", + "\"essentials\" Resource Group that we created earlier. Under Region, make sure you are in \"(US) East US\". \n", + "Next, in the \"Key pair name\" window enter **essentials-public-key**. Under the \n", "\"SSH public key source\" window, click the pull down menu and choose\"Upload existing public key\". \n", - "In the \"Upload key\" box, paste the key that we cut (copied into the edit buffer) earlier by \n", - "clicking in the box and paste it using the paste command supported by the your OS (i.e \n", - "for mac use command v). Make sure there are no extra white spaces. Click \"Review + create\" \n", - "and after validation click create.\n", + "In the \"Upload key\" box, paste the key that we cut (copied into your clipboard) earlier by \n", + "clicking in the box and paste it using the paste command supported by your OS (i.e \n", + "for mac use command v). Make sure there are no extra white spaces on either end of the \n", + "string. Click \"Review + create\" and after validation click create.\n", "\n", - "We will use this key when we create a VM." + "We will use this key when we create a VM.\n", + "\n", + "You can now close the cloud shell by clicking on the X in the upper \n", + "right of the cloud shell window." ] }, { diff --git a/content/Azure/03_intro_to_compute.ipynb b/content/Azure/03_intro_to_compute.ipynb index 5dcb131..84ed310 100644 --- a/content/Azure/03_intro_to_compute.ipynb +++ b/content/Azure/03_intro_to_compute.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "4a903197", + "id": "6b79bcc0", "metadata": {}, "source": [ "# Introduction to Virtual Machines (VM) in Azure\n", @@ -11,7 +11,7 @@ "```{admonition} Overview\n", ":class: tip\n", "\n", - "**Teaching:**\n", + "**Teaching:** 45 mins\n", "\n", "**Exercises:**\n", "\n", @@ -19,12 +19,13 @@ "* How do I create my own computer in the cloud?\n", "\n", "**Objectives:**\n", - "* Navigate the Google Compute Engine service and terminology.\n", - "* Allocate a virtual machine in Google Compute Engine.\n", + "* Navigate the Azure virual machine service.\n", + "* Allocate a virtual machine using the Azure console.\n", "* Choose a machine type based on the application.\n", - "* Use the cost estimator for Google Compute Engine.\n", - "* Understand what a service account is and how they are used.\n", - "* Learn how to connect to a virtual machine using ssh in the cloud shell with the web console.\n", + "* Use the cost estimator for the machine size.\n", + "* Deploy a virtual machine.\n", + "* Learn how to connect to a virtual machine using ssh \n", + "in the cloud shell.\n", "```" ] }, @@ -47,110 +48,7 @@ }, { "cell_type": "markdown", - "id": "7f84feb2", - "metadata": {}, - "source": [ - "Before we begin this lesson, we need to create a *ssh key pair* so that we can securely login to the Virtual \n", - "Machine (VM) we are about to create. We will need a ssh public key when we create the VM. If \n", - "you have already created a key pair in the previous lession: [Intro to Cloud Console](01_intro_to_cloud_console.ipynb)\n", - "then continue to step 2. If you have already copied the public key to your edit buffer then go to *Create a VM*.\n", - "\n", - "**Step 1.**\n", - "\n", - "The Cloud Shell should already be open from the previous lesson [Intro to Cloud Console](01_intro_to_cloud_console.ipynb).\n", - "If not, Open a Cloud Shell by clicking on the Cloud Shell icon in the right side of the top \n", - "blue bar (the icon looks like box with a greater than sign followed by an underscore).\n", - "\n", - "At the $ prompt in the Cloud Shell, enter ssh-keygen and follow the prompts.\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "c5889478", - "metadata": {}, - "outputs": [], - "source": [ - "$ssh-keygen\n", - "Generating public/private rsa key pair.\n", - "Enter file in which to save the key (/home/john/.ssh/id_rsa):" - ] - }, - { - "cell_type": "markdown", - "id": "0950e691", - "metadata": {}, - "source": [ - "This prompt is asking you to create a .ssh directory in your home directory and generate ssh \n", - "public/private keys named id_rsa.pub/id_rsa (default) respectively.\n", - "\n", - "Press enter to continue to create the key. You will see another message asking you for a \n", - "passphrase, similar to the following:\n", - "\n", - "Generating public/private rsa key pair.\n", - "Enter passphrase (empty for no passphrase):\n", - "Here you should enter a passphrase (a series of words) to protect the key. You will be asked \n", - "to re-enter the passphrase as shown below:\n", - "\n", - "Enter same passphrase again:\n", - "After successfully retyping the passphrase the key generation process will continue showing a \n", - "similar message as follows (the fingerprint and art will look different):\n", - "````\n", - "Your identification has been saved in /home//.ssh/id_rsa.\n", - "Your public key has been saved in /home//.ssh/id_rsa.pub.\n", - "The key fingerprint is:\n", - "SHA256:D9yj1nZEUigahirvjkIFoCP7RfjDu67Ku88M7nHQftI learner@cs-748001990186-default-boost-r9phq\n", - "The key's randomart image is:\n", - "+---[RSA 2048]----+\n", - "|o . .. |\n", - "|.. .. o . .. |\n", - "|+ o... o .. . |\n", - "|ooo= .. . o |\n", - "|.+..= S o . |\n", - "| o+..o = o |\n", - "|.+.+.E o + . |\n", - "|+.B o. . . . |\n", - "|=O**o |\n", - "+----[SHA256]-----+\n", - "````\n", - "\n", - "The ssh key generation is now complete. You will only need to do this once for your account. \n", - "Next, you will need to Cut (copy) and later Paste the public key during the VM creation process." - ] - }, - { - "cell_type": "markdown", - "id": "d2237859", - "metadata": {}, - "source": [ - "**Step 2.**\n", - "\n", - "To Cut (copy) your public key, run the following command." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e4971654", - "metadata": {}, - "outputs": [], - "source": [ - "cat /home//.ssh/id_rsa.pub" - ] - }, - { - "cell_type": "markdown", - "id": "b758abd3", - "metadata": {}, - "source": [ - "Highlight the output string with your cursor starting with ssh-rsa until the end of the string (white test) and \n", - "before you come to the green command prompt. With the public key highlighted, use the copy command (depending on OS) \n", - "to put it in your edit buffer (i.e. for mac use command c)." - ] - }, - { - "cell_type": "markdown", - "id": "84ddff97", + "id": "f9695785", "metadata": {}, "source": [ "## Create a VM\n", @@ -160,16 +58,17 @@ "In the middle of the page under the \"Create Virtual Machine\" heading there are menu options from left to right: \n", "Basic, Disk, Networking, Management, Advanced, Tags, Review & Create. We will start with the Basic tab (default).\n", "\n", - "**Part 1**\n", - "\n", - "Under the Basic tab (default)\n", + "**Basic**\n", "\n", "* Check subscription\n", " * Use the pull down menu to change subscriptions if needed\n", - "* select or create Resource Group\n", - " * Click the create a new Resource Group and enter a name that conforms to the azure naming convention (only alphanumeric characters, periods, underscores, hyphens, and parenthesis and can not end in a period)\n", + "* Resource Group\n", + " * Click the down arrow in the Resource Group window and choose \n", + " the resource group \"essentials\" that we created earlier.\n", "* Virtual machine name\n", - " * Enter a name that does not contain special characters including blah or begin *_* or end with *.* or *-* \n", + " * Enter \"essentials-VM\"\n", + "* Region\n", + " * Make sure you are in (US) East US\n", "* Image\n", " * Use default image (Ubuntu 20.04 - Gen2)\n", "* Size\n", @@ -180,91 +79,47 @@ }, { "cell_type": "markdown", - "id": "18d099ed", + "id": "a533563e", "metadata": {}, "source": [ - "**Part 2**\n", - "\n", "* Authentication type \n", - " * ssh public key\n", + " * SSH public key (default)\n", "* Username\n", - " * Choose usename (default: azeruser)\n", + " * Choose a username (default: azeruser)\n", "* SSH public key source\n", - " * Select use existing public key\n", - " * Use the key we create and Cut (copied) earlier, paste (depending on OS) it into the red box below (i.e for mac use command v). \n", - "* Key pair name\n", - " * Choose name for key pair (default: auto generated based on VM name)\n", - "* Public inbound ports\n", - " * Select Allow selected ports (default)\n", - "* Select inbound ports\n", - " * Select SSH (22) from the pull down menu (default)\n", + " * Select Use existing key stored in Azure\n", + "* Stored keys\n", + " * Click on \"Select a key\" and choose \"essentials-public-key\" that \n", + " we created earlier in the setup episode with the \"SSH key\" service.\n", "\n", - "![vm-create](images/01_CLASS_Azure_VM_basic_02.png)" - ] - }, - { - "cell_type": "markdown", - "id": "facf1999", - "metadata": {}, - "source": [ - "Now let's continue to the disk configuration by clicking Next:Disk> on the bottum or on the top heading menu choose the Disk option.\n", + "Leave the rest of the basic tab with the default settings\n", "\n", - "**Disk**\n", - "* OS Disk type\n", - " * Leave as default\n", - "* Encryption type\n", - " * Leave as default\n", - "* Data disk (create or attach)\n", - " * Leave as default" - ] - }, - { - "cell_type": "markdown", - "id": "3eed4826", - "metadata": {}, - "source": [ - "Now let's continue to the networking configuration by clicking Next:Networking> on the bottum or on the top heading menu choose the Networking option.\n", - "\n", - "**Networking**\n", - "* Virtual network name\n", - "* Public IP\n", - " * None\n", - "* NIC network security group \n", - " * None\n", - "* Public inbound port(s)\n", - " * Allow selected port\n", - "* Select inbound port(s)\n", - " * Use 22 for ssh access\n", - "* Delete public IP and NIC when VM is deleted\n", - " * Check this box" + "![vm-create](images/01_CLASS_Azure_VM_basic_02.png)" ] }, { "cell_type": "markdown", - "id": "1f163321", + "id": "07dc6292", "metadata": {}, "source": [ - "Now let's continue to provision the VM. The next three menu options across the top are outside the scope of this tutorial so now we are ready to click Review & Create.\n", - "\n", - "**Management**\n", - "* Outside of scope\n", - "\n", - "**Advanced**\n", + "Now we can provision the VM. The Management, Monitoring, \n", + "Advanced, and Tags menu options across the top are outside the \n", + "scope of this tutorial so we are now ready to click Review & Create.\n", "\n", - " * Outside of scope\n", - " \n", - "**Tags**\n", + "### Review & Create\n", "\n", - " * Outside of scope\n", - " \n", "**Review & Create**\n", "\n", " * Click Review & Create \n", - " * After review you should have a green check indicating a successful validation\n", + " * After review you should have a green check indicating a \n", + "successful validation\n", " * Check parameters for correctness\n", " * Click create\n", "\n", - "When the VM is provisioned we can verify that the VM was created.\n", + "When the VM is finished being provisioned, you will see a button to \n", + "Go to resource. Click on the button and you will be directed to the \n", + "overview page of the VM. We can also verify the deployment by doing \n", + "the following:\n", "\n", "**Verify deployment**\n", "* Click the hamburger in the upper left\n", @@ -274,26 +129,44 @@ "\n", "![vm-networking](images/04_CLASS_Azure_VM_verify.png)\n", "\n", - "You will be looking at the overview page. The Overview page contains essential information like OS, public IP, \n", - "RG, status, subscriptioin as well as other properties and information. Find and record the Public IP address. " + "You should see the VM overview page. The Overview page contains \n", + "essential information like OS, public IP, Resource Gtoup, status, \n", + "subscriptioin as well as other properties and information. " ] }, { "cell_type": "markdown", - "id": "dd25a15a", + "id": "5849f160", "metadata": {}, "source": [ "## Connect to the VM Instance\n", "\n", - "To connect to the *VM Instance* we will use the cloud shell in the web console. Open up a shell by clicking on the **Activate Cloud Shell** icon (on the top blue bar click\n", - "button the looks like a box with a greater than sign followed by an underscore) in the top blue bar if it is not \n", - "already open. In Cloud Shell ssh to the VM you just created. (default username \"azureuser\")" + "To connect to the *VM Instance* we will need to get the username and\n", + "IP address for the machine we just created. First, navigate to the \n", + "VM overview page if not there already.\n", + "\n", + "To connect to the machine we will use the cloud shell in the \n", + "web console. But first we need to get the username and\n", + "IP address for the machine we just created. On the VM overview page, \n", + "locate the \"Public IP address\" and hover your mouse over the number. \n", + "This will bring up an icon to the right where you can copy this number \n", + "to your clipboard. (image)\n", + "\n", + "Open up a cloud shell by clicking on the **cloud Shell** icon \n", + "(button the looks like a box with a greater than sign followed \n", + "by an underscore) on the top blue bar if the cloud shell is not \n", + "already open.\n", + "\n", + "In the cloud shell type \"ssh\", then a space, then the username \n", + "(azureuser by default), followed by an \"@\" sign. Now paste \n", + "(OS dependent) the public IP number directly after the \"@\" sign and \n", + "hit return." ] }, { "cell_type": "code", "execution_count": null, - "id": "c03d81d8", + "id": "eb038206", "metadata": {}, "outputs": [], "source": [ @@ -319,45 +192,19 @@ "metadata": {}, "outputs": [], "source": [ - "ssh azureuser@52.168.77.0\n", - "The authenticity of host '52.168.77.0 (52.168.77.0)' can't be established.\n", + "ssh azureuser@10.10.10.10\n", + "The authenticity of host '10.10.10.0 (10.10.10.0)' can't be established.\n", "ECDSA key fingerprint is SHA256:F/3poSNTVVNbfSp3Kc7zBGwiGzt3qwrmjiyfI1ZHnX4.\n", "Are you sure you want to continue connecting (yes/no)?" ] }, { "cell_type": "markdown", - "id": "41119145", - "metadata": {}, - "source": [ - "## Clean up\n", - "\n", - "To complete the resource life-cycle we simply delete the VM created in this lesson. This will leave you with a Resource Group that can be used again for additional services.\n", - "\n", - "To delete the VM:\n", - "\n", - "* In the Azure portal, navigate to the list of VMs in your Resource Group.\n", - "* Select the VM to delete.\n", - "* Select the More button (...), and select Delete.\n", - "* Confirm that you want to delete the VM.\n", - "\n", - "Delete the Resource Group (optional)\n", - "\n", - "* In the Azure portal, navigate to the Resource Group blade/button.\n", - "* Select the Resource Group to delete.\n", - "* Click delete\n", - "* A warning will ask you to enter the name of the Resource Group to make sure you want to continue with this perminent operation.\n", - "* Confirm that you want ot delete the Resouce Group.\n", - "\n", - "Note: By deleting the Resource Group you will delete all services under it." - ] - }, - { - "cell_type": "markdown", - "id": "6ec28fed", + "id": "52466d98", "metadata": {}, "source": [ - "## Reference" + "Now you should be logged into your VM. You will notice that your\n", + "command prompt has changed to \"azureuser@essentials-VM\"." ] } ], @@ -377,7 +224,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.7" + "version": "3.9.10" } }, "nbformat": 4,