From 949e6e12a419a0fa3834a53e2ff3548a92678b22 Mon Sep 17 00:00:00 2001 From: jhickszen Date: Mon, 10 Jan 2022 11:52:13 -0500 Subject: [PATCH] major azure update --- content/Azure/01_intro_to_cloud_console.ipynb | 128 +++-- ...tro_to_cli.ipynb => 02_intro_to_cli.ipynb} | 22 +- ...ompute.ipynb => 03_intro_to_compute.ipynb} | 20 +- content/Azure/04_intro_to_compute_cli.ipynb | 260 ++++++++++ content/Azure/05_intro_to_cloud_storage.ipynb | 20 +- .../Azure/06_intro_to_cloud_storage_cli.ipynb | 253 ++++++++++ content/Azure/07_monitoring_costs.ipynb | 20 +- ...alysis.ipynb => 08_running_analysis.ipynb} | 20 +- ...s.ipynb => 09_cleaning_up_resources.ipynb} | 20 +- content/Azure/10_basic_networking_extra.ipynb | 469 ++++++++++++++++++ content/Azure/images/azure_intro_console.jpg | Bin 71596 -> 44045 bytes .../Azure/images/azure_intro_console_orig.jpg | Bin 0 -> 71596 bytes content/Azure/intro_to_Azure_Essentials.ipynb | 15 +- content/_toc.yml | 11 +- 14 files changed, 1170 insertions(+), 88 deletions(-) rename content/Azure/{04_intro_to_cli.ipynb => 02_intro_to_cli.ipynb} (97%) rename content/Azure/{02_intro_to_compute.ipynb => 03_intro_to_compute.ipynb} (93%) create mode 100644 content/Azure/04_intro_to_compute_cli.ipynb create mode 100644 content/Azure/06_intro_to_cloud_storage_cli.ipynb rename content/Azure/{06_running_analysis.ipynb => 08_running_analysis.ipynb} (60%) rename content/Azure/{08_cleaning_up_resources.ipynb => 09_cleaning_up_resources.ipynb} (88%) create mode 100644 content/Azure/10_basic_networking_extra.ipynb create mode 100644 content/Azure/images/azure_intro_console_orig.jpg diff --git a/content/Azure/01_intro_to_cloud_console.ipynb b/content/Azure/01_intro_to_cloud_console.ipynb index efa722f..3cabc97 100644 --- a/content/Azure/01_intro_to_cloud_console.ipynb +++ b/content/Azure/01_intro_to_cloud_console.ipynb @@ -2,66 +2,87 @@ "cells": [ { "cell_type": "markdown", - "id": "976355b6", + "id": "b6f03192", "metadata": {}, "source": [ - "# Introduction to the Azure Console\n", - "\n", + "# Introduction to the Azure Cloud Console\n", "\n", "```{admonition} Overview\n", ":class: tip\n", "\n", - "**Teaching:** 15 mins\n", + "**Teaching:**\n", "\n", - "**Exercises:** 5 mins\n", + "**Exercises:**\n", "\n", "**Questions:**\n", - "* How do I navigate the web console?\n", + "* How do I find things in the web console?\n", + "* How do I access the cloud through the command line?\n", "\n", "**Objectives:**\n", - "* Log in to the Azure web console\n", - "* Navigate the Azure web console\n", - "* Recognize important information about your cloud environment\n", + "* Login to the Azure web console\n", + "* Find and verify important information about your cloud environment.\n", + "* Find and open the Cloud Shell\n", "\n", "```" ] }, { "cell_type": "markdown", - "id": "61be7c43-99c1-4033-8252-6955b942bee4", + "id": "20e902b2", "metadata": {}, "source": [ "## Setup\n", "\n", - "The console is the point of entry where you will start your Azure journey. If you are participating in the CLASS Essentials Workshop, you will have received a csv file via email. This csv file contains your **username**, **temporary password** and **console login link**. \n", - "\n", - "```{admonition} Be Aware\n", - ":class: danger\n", - "If you are doing self-paced learning, your login information may be different!\n", - "```" + "The console is the point of entry where you will start your Azure journey. If you are participating in the CLASS Essentials Workshop, you will have received a csv file via email. This csv file contains your **username**, **temporary password** and **console login link**. \n" ] }, { "cell_type": "markdown", - "id": "f57d9cdf-8ed5-4cab-87f7-4219cb33bf2b", + "id": "5fab77a5", "metadata": {}, "source": [ - "## Logging in to the console\n", - "Paste your console login link into your web browser. You will see the Azure site requesting your username and password. Fill in your username and password that was assigned to you in the csv file. \n", + "#### Accounts (Authentication and Identity) & login\n", + "\n", + "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. 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", - "You are now logged on. Welcome to the first step of your cloud journey! \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", + " * Find your user/account under the \"Avatar\" in the top right (see number 4 below).\n", "\n", - "The below is what your screen should look like when you log in to the Azure console. Next, let's take a closer look at some key concepts and components of the Azure console. \n", + "You are now logged on. Welcome to the first step of your cloud journey!" + ] + }, + { + "cell_type": "markdown", + "id": "43174583", + "metadata": {}, + "source": [ + "### Exercise\n", + "\n", + "Take a few moments to ask yourself the following questions:\n", + " * What account are you currently using in the Google Cloud web console?\n", + " * Are you logged into any other accounts?\n", + " * How do you know which account is being used?\n", + " \n", + " If you are not currently using the correct account, switch to it." + ] + }, + { + "cell_type": "markdown", + "id": "9cd64226", + "metadata": {}, + "source": [ + "The top of your screen should look very similar to the following when you log in to the Azure console. Next, let's take a closer look at some key concepts and components of the Azure console. \n", "\n", "![cloud-shell](images/azure_intro_console.jpg)" ] }, { "cell_type": "markdown", - "id": "27fc9127", + "id": "b1b0faae", "metadata": {}, "source": [ - "**1. Hamburger**\n", + "**1. Navigation Menu (often called the hamburger)**\n", ": If you click on the hamburger (three horizontal lines) you will get a dropdown menu and see a list of services that are offered by Azure. Currently, Azure has over N services ranging from compute to machine learning to networking to data storage. The list grows frequently!\n", "\n", "**2. Search bar**\n", @@ -70,36 +91,67 @@ "**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 16.04 LTS with persistent storage.\n", "\n", - "**4. IAM Username and Organization**\n", + "**4. Directories & Subscriptions**\n", + ": This button will show the current Subsciption and Active Directory (cover later) associated with your account. The Subscription is your billing account. Using this dropdown to verify that 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 assigned a particular permission scope (in AWS 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" ] }, { "cell_type": "markdown", - "id": "e7ad8ac9", + "id": "6e3b3cbd", + "metadata": {}, + "source": [ + "## Services\n", + "\n", + "The web console is used to control and observe the cloud from the browser. It should only be used for simple and one-time tasks, exploring new services, accessing documentation, or for monitoring and debugging resources in the cloud. Programmatic control through the console, programming languages (for example Python), and other automation tools should be used for day to 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 above) is used to navigate to the various products, which are also sometimes called services.\n" + ] + }, + { + "cell_type": "markdown", + "id": "e94b53e2", "metadata": {}, "source": [ - "```{admonition} Exercise\n", - ":class: attention\n", + "## Open a Cloud Shell\n", + "\n", + "The Cloud Shell is an easy way to access Comand Line Interface (CLI) commands in a web browser. Under the hood Cloud Shell is Debian running in a container with 5GB of minimal-charge persistent storage and a lot of other useful tools (git, docker, jq, Docker, etc.) installed by default.\n", "\n", - "* What is your IAM username? \n", - "* Why is IAM important?\n", - "* What are the three ways you can find an Azure service on the console?\n", - "````" + "To use the Cloud Shell:\n", + " * Open up a Cloud Shell by clicking on the **Cloud Shell** icon in the right side of the top blue bar (number 3 above).\n", + " * Once the Cloud Shell is open, 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" + ] + }, + { + "cell_type": "markdown", + "id": "c0706cc3", + "metadata": {}, + "source": [ + "Now let's move on the to next lession" ] } ], "metadata": { "kernelspec": { - "display_name": "Bash", - "language": "bash", - "name": "bash" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { - "codemirror_mode": "shell", - "file_extension": ".sh", - "mimetype": "text/x-sh", - "name": "bash" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/Azure/04_intro_to_cli.ipynb b/content/Azure/02_intro_to_cli.ipynb similarity index 97% rename from content/Azure/04_intro_to_cli.ipynb rename to content/Azure/02_intro_to_cli.ipynb index 46c1fac..b1e6158 100644 --- a/content/Azure/04_intro_to_cli.ipynb +++ b/content/Azure/02_intro_to_cli.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "bfb78c2d", + "id": "3ba4b111", "metadata": {}, "source": [ "# Navigating the Command Line Interface (CLI)\n", @@ -448,15 +448,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Bash", - "language": "bash", - "name": "bash" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { - "codemirror_mode": "shell", - "file_extension": ".sh", - "mimetype": "text/x-sh", - "name": "bash" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/Azure/02_intro_to_compute.ipynb b/content/Azure/03_intro_to_compute.ipynb similarity index 93% rename from content/Azure/02_intro_to_compute.ipynb rename to content/Azure/03_intro_to_compute.ipynb index dca45b7..58db0c5 100644 --- a/content/Azure/02_intro_to_compute.ipynb +++ b/content/Azure/03_intro_to_compute.ipynb @@ -148,15 +148,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Bash", - "language": "bash", - "name": "bash" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { - "codemirror_mode": "shell", - "file_extension": ".sh", - "mimetype": "text/x-sh", - "name": "bash" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/Azure/04_intro_to_compute_cli.ipynb b/content/Azure/04_intro_to_compute_cli.ipynb new file mode 100644 index 0000000..0bb8ebf --- /dev/null +++ b/content/Azure/04_intro_to_compute_cli.ipynb @@ -0,0 +1,260 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Intro to Compute CLI\n", + "\n", + "**Overview**\n", + " \n", + "**Teaching:**\n", + "\n", + "**Exercises:**\n", + "\n", + "**Questions:**\n", + " * How do I create my own computer in the cloud?\n", + "\n", + "**Objectives:**\n", + " * Allocate a virtual machine in Azure.\n", + " * Learn how to connect to a virtual machine using ssh in the cloud shell." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Open the cloud shell (See: intro_to_cli)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Define some environment variables" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "RG=\"demo_rg\"\n", + "LOCATION=eastus\n", + "VM=\"demo_vm\"\n", + "STGE_ACCT=\"demo_stor_ac\"\n", + "CTR=\"demo_stge_ctr\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create resource group" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az group create --name $RG --location $LOCATION" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create a VM" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If this is the fist time running this command (or your ~/.ssh dir does not have an id_rsa key pair). It will generate a new key pair id_rsa in ~/.ssh. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az vm create --resource-group $RG \\\n", + " --name $VM \\\n", + " --image UbuntuLTS \\\n", + " --admin-username demouser \\\n", + " --generate-ssh-keys \\\n", + " --output json \\\n", + " --verbose " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To create a VM with an existing pair first create a new key pair" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ssh-keygen" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You will be prompted to \"Enter file in which to save the key\", type \"id_rsa\". This will create a key pair in the current dir." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here you should enter a passphrase (a series of words) to protect the key. You will be asked to re-enter the passphrase as shown below:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Enter same passphrase again:" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "After successfully retyping the passphrase the key generation process will continue showing similar message as follows (the fingerprint and art will look different):" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note: The following using \"--ssh-key-values\" to define which keys to use." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az vm create --name $VM \n", + " --resource-group $RG \n", + " --image UbuntuLTS \n", + " --admin-username demouser \n", + " --ssh-key-values id_rsa.pub" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Show VM details (all)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az vm show --name $VM --resource-group $RG" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Login into VM" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Get the public IP address from the output above.\n", + "If you generated a new key pair using \"--generate-ssh-keys\", login with the following command." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ssh " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you used the command with \"--ssh-key-values id_rsa.pub\" to use existing keys, use the following command to logiin:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ssh -i /id_rsa " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "clean up\n", + "\n", + "The --no-wait parameter keeps the CLI from blocking while the deletion takes place." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az group delete --name $RG --no-wait" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/content/Azure/05_intro_to_cloud_storage.ipynb b/content/Azure/05_intro_to_cloud_storage.ipynb index eaa38c6..e270130 100644 --- a/content/Azure/05_intro_to_cloud_storage.ipynb +++ b/content/Azure/05_intro_to_cloud_storage.ipynb @@ -182,15 +182,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Bash", - "language": "bash", - "name": "bash" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { - "codemirror_mode": "shell", - "file_extension": ".sh", - "mimetype": "text/x-sh", - "name": "bash" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/Azure/06_intro_to_cloud_storage_cli.ipynb b/content/Azure/06_intro_to_cloud_storage_cli.ipynb new file mode 100644 index 0000000..652b66f --- /dev/null +++ b/content/Azure/06_intro_to_cloud_storage_cli.ipynb @@ -0,0 +1,253 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Intro to Cloud Storage CLI\n", + "\n", + "**Overview**\n", + "\n", + "**Teaching:**\n", + "\n", + "**Exercises:**\n", + "\n", + "**Questions:**\n", + "\n", + " * How do I store data in the cloud?\n", + "\n", + "**Objectives:**\n", + "\n", + " * Create a Storage Account \n", + " \n", + " * Create a bucket\n", + "\n", + " * Learn to copy data in/out of a bucket using the command line.\n", + "\n", + " * Clean up resources" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Open the cloud shell (See: intro_to_cli)\n", + "\n", + "Delpoy blob storage in Azure" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Define some environment variables" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "RG=\"demo_rg\"\n", + "LOCATION=eastus\n", + "BLOB_CON=\"demo_blob_cont\"\n", + "STGE_ACCT=\"demo_stor_ac\"\n", + "CTR=\"demo_stge_ctr\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create resource group" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az group create --name $RG --location $LOCATION" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create storage account\n", + "\n", + "All storage resources need to belong to a storage account." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az storage account create \\\n", + " --name $STGE_ACCT \\\n", + " --resource-group $RG \\\n", + " --location $LOCATION \\\n", + " --sku Standard_ZRS \\\n", + " --encryption-services blob\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create storage container\n", + "\n", + "The following example uses your Azure AD account to authorize the operation to create the container. Before you create the container, assign the Storage Blob Data Contributor role to yourself. Even if you are the account owner, you need explicit permissions to perform data operations against the storage account." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az ad signed-in-user show --query objectId -o tsv | az role assignment create \\\n", + " --role \"Storage Blob Data Contributor\" \\\n", + " --assignee @- \\\n", + " --scope \"/subscriptions//resourceGroups/$RG/providers/Microsoft.Storage/storageAccounts/$STGE_ACCT\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now create the storage Container " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az storage container create \\\n", + " --account-name $STGE_ACCT \\\n", + " --name $CTR \\\n", + " --auth-mode login" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we will upload a file from your local machine" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create a file to upload" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "echo \"Demo text\" > demo_file" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copy demo_file to your blob." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az storage blob upload \\\n", + " --account-name $STGE_ACCT \\\n", + " --container-name $CTR \\\n", + " --name demo_file \\\n", + " --file demo_file \\\n", + " --auth-mode login" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Download the file we just uploaded." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az storage blob download \\\n", + " --account-name $STGE_ACCT \\\n", + " --container-name $STGE_ACCT \\\n", + " --name demo_file \\\n", + " --file ~/destination/path/for/file \\\n", + " --auth-mode login" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Clean up" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "By deleting the Resource Group, you will delete all resouce in that group.\n", + "\n", + "The --no-wait parameter keeps the CLI from blocking while the deletion takes place." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "az group delete --name $RG --no-wait" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/content/Azure/07_monitoring_costs.ipynb b/content/Azure/07_monitoring_costs.ipynb index 0c280fa..e0b5d2d 100644 --- a/content/Azure/07_monitoring_costs.ipynb +++ b/content/Azure/07_monitoring_costs.ipynb @@ -26,15 +26,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Bash", - "language": "bash", - "name": "bash" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { - "codemirror_mode": "shell", - "file_extension": ".sh", - "mimetype": "text/x-sh", - "name": "bash" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/Azure/06_running_analysis.ipynb b/content/Azure/08_running_analysis.ipynb similarity index 60% rename from content/Azure/06_running_analysis.ipynb rename to content/Azure/08_running_analysis.ipynb index a0ec478..b16481f 100644 --- a/content/Azure/06_running_analysis.ipynb +++ b/content/Azure/08_running_analysis.ipynb @@ -25,15 +25,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Bash", - "language": "bash", - "name": "bash" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { - "codemirror_mode": "shell", - "file_extension": ".sh", - "mimetype": "text/x-sh", - "name": "bash" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/Azure/08_cleaning_up_resources.ipynb b/content/Azure/09_cleaning_up_resources.ipynb similarity index 88% rename from content/Azure/08_cleaning_up_resources.ipynb rename to content/Azure/09_cleaning_up_resources.ipynb index 52b682f..6b11af4 100644 --- a/content/Azure/08_cleaning_up_resources.ipynb +++ b/content/Azure/09_cleaning_up_resources.ipynb @@ -111,15 +111,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Bash", - "language": "bash", - "name": "bash" + "display_name": "Python 3", + "language": "python", + "name": "python3" }, "language_info": { - "codemirror_mode": "shell", - "file_extension": ".sh", - "mimetype": "text/x-sh", - "name": "bash" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/Azure/10_basic_networking_extra.ipynb b/content/Azure/10_basic_networking_extra.ipynb new file mode 100644 index 0000000..bc13496 --- /dev/null +++ b/content/Azure/10_basic_networking_extra.ipynb @@ -0,0 +1,469 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "7b5d7170", + "metadata": {}, + "source": [ + "\n", + "## Basic Azure networking\n", + "\n", + "Learner Questions\n", + "\n", + "* How do I deploy a network in Azure using the CLI?\n", + "\n", + "Learning Objectives\n", + "\n", + "* Deploy a virtual network and subnet\n", + "* Seccure virtual network using network security groups (nsg)\n", + "* Deploy ngix container\n", + "* Clean up (delete) resouces\n", + "\n", + "# Setup\n", + "\n", + "First we will create a virtual network with a subnet. We will then create a network security groups \n", + "(ngs) for the subnet and define nsg rules to let traffic in and out (ports opened). Finally we will login to (execute commands on) the containers. After this exercise we will clean up and delete our resources." + ] + }, + { + "cell_type": "markdown", + "id": "98b49d7c", + "metadata": {}, + "source": [ + "Setup the environment variables" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f9b25424", + "metadata": {}, + "outputs": [], + "source": [ + "export RGROUP=\"ps-rg\"\n", + "export REGION=\"eastus\"" + ] + }, + { + "cell_type": "markdown", + "id": "cac47244", + "metadata": {}, + "source": [ + "All Azure projects start with a resouce group (RG)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f603213e", + "metadata": {}, + "outputs": [], + "source": [ + "az group create --name $RGROUP --location $REGION" + ] + }, + { + "cell_type": "markdown", + "id": "d1315f96", + "metadata": {}, + "source": [ + "Set virtual network and subnet environment variables" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2e674700", + "metadata": {}, + "outputs": [], + "source": [ + "export VNET=\"VNET\" # Virtual network\n", + "export SUBNET=\"SN\" # Public facing subnet" + ] + }, + { + "cell_type": "markdown", + "id": "73c5f2d9", + "metadata": {}, + "source": [ + "Create a virtual network and subnet" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "892d901e", + "metadata": {}, + "outputs": [], + "source": [ + "az network vnet create \\\n", + " --resource-group $RGROUP \\\n", + " --name $VNET \\\n", + " --address-prefix 10.0.0.0/16 \\\n", + " --subnet-name $SUBNET \\\n", + " --subnet-prefix 10.0.1.0/24" + ] + }, + { + "cell_type": "markdown", + "id": "bf965b43", + "metadata": {}, + "source": [ + "Create a public IP" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ab70080e", + "metadata": {}, + "outputs": [], + "source": [ + "export PUBIP=\"PublicIPAddress\" # Public IP address" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b2b7b731", + "metadata": {}, + "outputs": [], + "source": [ + "az network public-ip create --resource-group $RGROUP --name $PUBIP" + ] + }, + { + "cell_type": "markdown", + "id": "6b9aa16e", + "metadata": {}, + "source": [ + "Create network security groups" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d08a7a6c", + "metadata": {}, + "outputs": [], + "source": [ + "export NSGROUP=\"Container-Security-Group\" # Network Security Group" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "41760e52", + "metadata": {}, + "outputs": [], + "source": [ + "az network nsg create --resource-group $RGROUP --name $NSGROUP" + ] + }, + { + "cell_type": "markdown", + "id": "5a28245a", + "metadata": {}, + "source": [ + " Create a rule for the NSG for TCP." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "216bfdf2", + "metadata": {}, + "outputs": [], + "source": [ + "az network nsg rule create \\\n", + " --resource-group $RGROUP \\\n", + " --nsg-name $NSGROUP \\\n", + " --name demo-nsg \\\n", + " --access Allow \\\n", + " --protocol Tcp \\\n", + " --direction Inbound \\\n", + " --priority 300 \\\n", + " --source-address-prefix 10.0.1.0/24 \\\n", + " --source-port-range \"*\" \\\n", + " --destination-address-prefix \"*\" \\\n", + " --destination-port-range 80 8080 443" + ] + }, + { + "cell_type": "markdown", + "id": "6bfe734d", + "metadata": {}, + "source": [ + "Add rule to block all traffic from blah, Note --priority 100 is lower than the previous" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f2db1617", + "metadata": {}, + "outputs": [], + "source": [ + "az network nsg rule create \\\n", + " --resource-group $RGROUP \\\n", + " --nsg-name $NSGROUP \\\n", + " --name denyAll \\\n", + " --access Deny \\\n", + " --protocol Tcp \\\n", + " --direction Inbound \\\n", + " --priority 100 \\\n", + " --source-address-prefix \"*\" \\\n", + " --source-port-range \"*\" \\\n", + " --destination-address-prefix \"*\" \\\n", + " --destination-port-range \"*\"" + ] + }, + { + "cell_type": "markdown", + "id": "3da3e070", + "metadata": {}, + "source": [ + "Associate the NSG to the subnet." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "dc0c1bf3", + "metadata": {}, + "outputs": [], + "source": [ + "az network vnet subnet update \\\n", + " --vnet-name $VNET \\\n", + " --name $SUBNET \\\n", + " --resource-group $RGROUP \\\n", + " --network-security-group $NSGROUP" + ] + }, + { + "cell_type": "markdown", + "id": "8acdef78", + "metadata": {}, + "source": [ + "List NSG" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0bb9fde5", + "metadata": {}, + "outputs": [], + "source": [ + "az network nsg list" + ] + }, + { + "cell_type": "markdown", + "id": "7a6b4e51", + "metadata": {}, + "source": [ + "**Deploy container**" + ] + }, + { + "cell_type": "markdown", + "id": "141b11b3", + "metadata": {}, + "source": [ + "Create container" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "822cbc51", + "metadata": {}, + "outputs": [], + "source": [ + "export CONT=\"demo-container\" # Public perfSONAR container" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1fd31b96", + "metadata": {}, + "outputs": [], + "source": [ + "az container create \\\n", + " --resource-group $RGROUP \\\n", + " --name $CONT \\\n", + " --image nginx \\\n", + " --restart-policy never \\\n", + " --vnet $VNET \\\n", + " --subnet $SUBNET" + ] + }, + { + "cell_type": "markdown", + "id": "89912f26", + "metadata": {}, + "source": [ + "Get front container IP address" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ec228f00", + "metadata": {}, + "outputs": [], + "source": [ + "az container show --resource-group $RGROUP --name $CONT --query ipAddress.ip --output tsv" + ] + }, + { + "cell_type": "markdown", + "id": "49e22332", + "metadata": {}, + "source": [ + "List containers" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "aa068645", + "metadata": {}, + "outputs": [], + "source": [ + "az container list --resource-group $RGROUP --output table" + ] + }, + { + "cell_type": "markdown", + "id": "022721a6", + "metadata": {}, + "source": [ + "Get logs from backend perfSONAR container" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "42bb79c8", + "metadata": {}, + "outputs": [], + "source": [ + "az container logs --resource-group $RGROUP --name $CONT" + ] + }, + { + "cell_type": "markdown", + "id": "bffb41e3", + "metadata": {}, + "source": [ + "Stream logs from backend perfSONAR container" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "79e78cdd", + "metadata": {}, + "outputs": [], + "source": [ + "az container attach --resource-group $RGROUP --name $SCONT" + ] + }, + { + "cell_type": "markdown", + "id": "a69a0109", + "metadata": {}, + "source": [ + "Execute command on contaioner" + ] + }, + { + "cell_type": "markdown", + "id": "c7746c24", + "metadata": {}, + "source": [ + "\"Login\" into container with bash shell" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b2c66780", + "metadata": {}, + "outputs": [], + "source": [ + "az container exec --resource-group $RGROUP --name $CONT --exec-command \"/bin/bash\"" + ] + }, + { + "cell_type": "markdown", + "id": "f7328eb2", + "metadata": {}, + "source": [ + "Now execute \"ls\" command to see what is there." + ] + }, + { + "cell_type": "markdown", + "id": "8bbdad92", + "metadata": {}, + "source": [ + "Delete virtual network" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a5b45a8f", + "metadata": {}, + "outputs": [], + "source": [ + "az network vnet delete --resource-group $RGROUP --name $VNET" + ] + }, + { + "cell_type": "markdown", + "id": "96db8a9f", + "metadata": {}, + "source": [ + "Clean up: delete container & rg" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4a0df1a5", + "metadata": {}, + "outputs": [], + "source": [ + "az container delete --resource-group $RGROUP --name -y\n", + "\n", + "az group delete --name $RGROUP" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.8" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/content/Azure/images/azure_intro_console.jpg b/content/Azure/images/azure_intro_console.jpg index c3cd32595e56720ac705c64f15a9ab4ba6f014e9..1f77f2e0de223c0d02bfa734130d84de9e7cea17 100644 GIT binary patch literal 44045 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 G?!N&GYOwAA diff --git a/content/Azure/images/azure_intro_console_orig.jpg b/content/Azure/images/azure_intro_console_orig.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c3cd32595e56720ac705c64f15a9ab4ba6f014e9 GIT binary patch literal 71596 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 G?!N&GYOwAA literal 0 HcmV?d00001 diff --git a/content/Azure/intro_to_Azure_Essentials.ipynb b/content/Azure/intro_to_Azure_Essentials.ipynb index c7ec784..2984146 100644 --- a/content/Azure/intro_to_Azure_Essentials.ipynb +++ b/content/Azure/intro_to_Azure_Essentials.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "21ff6943", + "id": "30c652f8", "metadata": {}, "source": [ "# Microsoft Azure\n", @@ -10,6 +10,7 @@ "The modules in this lesson are: \n", "\n", "1. [Introduction to the Azure Cloud Portal](./01_intro_to_cloud_console)\n", + "2. [Introduction to the Azure CLI](./02_intro_to_cli.ipynb)\n", "2. [Introduction to Cloud Compute (Azure Virtual Machines)](./02_intro_to_compute)\n", "3. [Introduction to the Azure CLI](./04_intro_to_cli)\n", "4. [Introduction to Cloud Storage (Blob Storage)](./05_intro_to_cloud_storage)\n", @@ -17,11 +18,19 @@ "6. [Monitoring Costs](./07_monitoring_costs)\n", "7. [Cleaning up Resources and Best Practices](./08_cleaning_up_resources)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "92d161a5", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "Python 3", "language": "python", "name": "python3" }, @@ -35,7 +44,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.10" + "version": "3.8.8" } }, "nbformat": 4, diff --git a/content/_toc.yml b/content/_toc.yml index 450f420..3f1f58b 100644 --- a/content/_toc.yml +++ b/content/_toc.yml @@ -25,12 +25,15 @@ parts: - file: Azure/intro_to_Azure_Essentials sections: - file: Azure/01_intro_to_cloud_console - - file: Azure/02_intro_to_compute - - file: Azure/04_intro_to_cli + - file: Azure/02_intro_to_cli + - file: Azure/03_intro_to_compute + - file: Azure/04_intro_to_compute_cli - file: Azure/05_intro_to_cloud_storage - - file: Azure/06_running_analysis + - file: Azure/06_intro_to_cloud_storage_cli - file: Azure/07_monitoring_costs - - file: Azure/08_cleaning_up_resources + - file: Azure/08_running_analysis + - file: Azure/09_cleaning_up_resources + - file: Azure/10_basic_networking_extra - file: GCP/intro_to_GCP_Essentials sections: