Skip to content
This repository was archived by the owner on Dec 12, 2025. It is now read-only.

Commit

Permalink
Merge branch 'main' into azure-dev
Browse files Browse the repository at this point in the history
merge azure
  • Loading branch information
jhicks committed Jun 23, 2022
2 parents 05d8493 + 4edfa1a commit 8e88899
Show file tree
Hide file tree
Showing 16 changed files with 1,047 additions and 790 deletions.
9 changes: 9 additions & 0 deletions Build.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,12 @@ Expect that `aws` is installed locally. A ssh-key named 'learner' is required t
## Azure

Expect that `az` is installed and configured locally. It will utilize your ~/.ssh/id_rsa.pub key.

## Bugs and Fixes

The bash kernel and Python do not like the new "bracketed paste" mode of the new bash/readline. To fix you can disable "bracketed paste" mode by doing
```bash
echo "set enable-bracketed-paste off" > ~/.inputrc
```
Note, this removes some copy/paste protection and recommended only for disposable VM's.

110 changes: 68 additions & 42 deletions content/GCP/01_intro_to_cloud_console.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -9,22 +9,24 @@
"source": [
"# Introduction to the GCP Cloud Console\n",
"\n",
"```{admonition} Overview\n",
":::{admonition} Overview\n",
":class: tip\n",
"\n",
"**Teaching:** 15 min.\n",
"\n",
"**Exercises:** 6 min.\n",
"\n",
"**Questions:**\n",
"* How do I find things in the web console?\n",
"* How do I access the cloud through the command line?\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",
"* Login to the Google Cloud web console\n",
"* Find and verify important information about your cloud environment.\n",
"* Find and open the Cloud Shell\n",
"```"
" * Login to the Google Cloud web console\n",
" * Find and verify important information about your cloud environment.\n",
" * Learn important Google Cloud terminology\n",
" * Find and open the Cloud Shell\n",
"\n",
":::"
]
},
{
Expand Down Expand Up @@ -64,15 +66,17 @@
"tags": []
},
"source": [
"```{admonition} Exercise\n",
":::{admonition} Exercise\n",
":class: 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",
" * 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.\n",
"```"
"\n",
":::"
]
},
{
Expand Down Expand Up @@ -104,7 +108,8 @@
"id": "182e3a9a",
"metadata": {},
"source": [
"```{admonition} Exercise\n",
":::{admonition} Exercise\n",
":class: exercise\n",
"\n",
"Take a few moments to ask yourself the following questions:\n",
" * What is the *name* of the Project you are currently using in the Google Cloud Platform web console?\n",
Expand All @@ -114,7 +119,8 @@
" * How do you know which project you are currently using?\n",
"\n",
"If you are currently not using the correct project for this lesson, switch to the correct one.\n",
"```"
"\n",
":::"
]
},
{
Expand All @@ -124,19 +130,20 @@
"tags": []
},
"source": [
"## Services\n",
"## Products\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 (often called the **hamburger**) is used to navigate to the various products, which are also sometimes called services.\n",
"**Products** are the various services offered on Google Cloud such as *Google Compute Engine* and *Cloud Storage*. Within each product you create **resources** that you can use, such virtual machines. The Navigation Menu (often called the **hamburger**) is used to navigate to the various products.\n",
"\n",
"![hamburger-navigation](img/hamburger-navigation.png)\n",
"\n",
" * Click on a product to navigate the product page\n",
" * You can pin frequently used items on the top of this page by clicking on the pin icon. \n",
" * A product is accessed and controlled via an API and usually must be enabled (once per project). To enable a product API click on the \"ENABLE\" button shown below.\n",
" * Click the hamburger again to hide the Left Sidebar.\n",
"\n",
"All the different products and services are the \"**What**\" of the cloud. We will start with compute, called *Google Compute Engine* in the next Episode. "
"![enable-compute-api](img/enable-compute-api.png)\n",
"\n",
"All the different products and resources are the \"**What**\" of the cloud. We will start with compute, called *Google Compute Engine* in the next Episode. "
]
},
{
Expand All @@ -146,13 +153,17 @@
"tags": []
},
"source": [
"```{admonition} Exercise\n",
"*Instructor: place instructions on the screen*\n",
"\n",
":::{admonition} Exercise 1\n",
":class: exercise\n",
"\n",
"Take a few moments to navigate a few key services.\n",
" * Navigate to \"Cloud Storage\" under the \"Storage\" product group.\n",
" * You will probably need to \"Enable\" this service first by clicking on the \"Enable\" button on the \"Cloud Storage API\" page. This will only need to be done once per project.\n",
" * Navigate to the \"Compute Engine\" service under the \"Compute\" product group and enable the service if necessary.\n",
"```"
"Take a few moments to navigate to a few key products and enable them.\n",
" * Navigate to \"Cloud Storage\" under the \"Storage\" product group.\n",
" * You may need to \"Enable\" this product first by clicking on the \"Enable\" button on the \"Cloud Storage API\" page. This will only need to be done once per project.\n",
" * Navigate to the \"Compute Engine\" product under the \"Compute\" product group and enable the product as well.\n",
"\n",
":::"
]
},
{
Expand All @@ -170,8 +181,8 @@
"\n",
"From left to right of the blue top navigation bar we have the following items (hover over the item with your mouse to see the name):\n",
" 1. Navigation Menu (often called the hamburger) allows you to go to each project and services page (shown below).\n",
" 2. Dashboard (\"Google Cloud Platform\") provides an overview of your project.\n",
" * Click it and note resources, billing, and platform Status\n",
" 2. Welcome (\"Google Cloud Platform\") provides an overview of your project.\n",
" * Click \"Dashboard\" it and note resources, billing, and platform Status\n",
" * This page is customizable and may look different.\n",
" 3. Project selection button showing the current project name with a drop-down arrow.\n",
" 4. Search bar - type in service or keywords\n",
Expand Down Expand Up @@ -213,28 +224,43 @@
},
{
"cell_type": "markdown",
"id": "118254c6-a5d9-4bd0-8a0f-64d4f72b3cf0",
"id": "9470567b-9966-4c07-a7ad-a94358530480",
"metadata": {
"tags": []
},
"source": [
"```{admonition} Exercise\n",
"## Putting it Together\n",
"\n",
"Before we move on, do the following:\n",
"* Double check that you are in the correct account and project that you will be using for this lesson.\n",
"* Take a moment to reflect on the \"Who, What, and Where\" of the cloud. \n",
" * What is your Who, What, and Where?\n",
" * Why is this important?\n",
"```"
"Now that we have the basics, we can provide a bit larger picture of the cloud and all the pieces:\n",
"\n",
"![gcp-overview](img/CLASS-Essentials-GCP-Overview.svg)\n",
"\n",
" * Project - a container to house and manage resources.\n",
" * Products - The different types of resources or services within Google Cloud.\n",
" * Resources - individual products running or stored within Google cloud such as compute, storage, networking, databases, etc. Resources can belong to only one Project.\n",
" * Billing Account - used to pay for resources and services consumed. Each project has only one billing account.\n",
" * Account - the identity that is used to accesses resources within Google Cloud. Note: this is *NOT* the Billing Account.\n",
" * Identity Access and Management (IAM) - manages access (permissions) to a resource by an account (also referred to as a principal).\n",
" * Organization - projects may optionally be housed in an organization (arranged in folders), which can add permissions and restrictions in a hierarchical manner. Projects can only belong to one Organization."
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "530f7a45-5708-4213-b120-71c6328f7026",
"metadata": {},
"outputs": [],
"source": []
"cell_type": "markdown",
"id": "118254c6-a5d9-4bd0-8a0f-64d4f72b3cf0",
"metadata": {
"tags": []
},
"source": [
":::{admonition} Exercise\n",
":class: exercise\n",
"\n",
"Before we move on, do the following:\n",
" * Double check that you are in the correct account and project that you will be using for this lesson.\n",
" * Take a moment to reflect on the \"Who, Where, and What\" of the cloud. \n",
" * What is your Who, Where, and What?\n",
" * Why is this important?\n",
":::"
]
}
],
"metadata": {
Expand All @@ -253,7 +279,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.7"
"version": "3.9.2"
}
},
"nbformat": 4,
Expand Down
Loading

0 comments on commit 8e88899

Please sign in to comment.