Skip to content

Commit 5e8f6de

Browse files
committed
docs: more details in part 1
1 parent 9831b67 commit 5e8f6de

9 files changed

+54
-26
lines changed

Diff for: docs/images/part-1/10-deployment.png

78.9 KB
Loading

Diff for: docs/images/part-1/10-deployment.png:Zone.Identifier

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[ZoneTransfer]
2+
LastWriterPackageFamilyName=Microsoft.MSPaint_8wekyb3d8bbwe
3+
ZoneId=3

Diff for: docs/images/part-1/10-validation.png

-27.1 KB
Loading

Diff for: docs/images/part-1/30-private-ip.png

62.1 KB
Loading

Diff for: docs/part1/00-objectives.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,13 @@ We will then manually customize the deployed infrastructure to:
1818
- An IBM Cloud Pay-As-You-Go or Subscription account.
1919
:information_source: **Note**: Participants in the TechXchange classroom will be provided with credentials to access an IBM Cloud account for the duration of the lab.
2020
- An IBMId
21-
- API Key
21+
- API Key with the following permissions...
2222

2323
A development machine with the following software:
2424
- [Terraform](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli)
2525
- Text editor of your choice
2626
- Web browser
2727
- Tools to generate SSH key. Linux and Mac comes with ssh-keygen. [PuTTYgen](https://www.ssh.com/academy/ssh/putty/windows/puttygen) can be used on Windows. See [Generating an external SSH key](https://cloud.ibm.com/docs/vpc?topic=vpc-ssh-keys&interface=ui#generating-ssh-keys)
28+
- Optional: [IBM Cloud CLI](https://cloud.ibm.com/docs/cli?topic=cli-getting-started)
2829

2930
:information_source: **Note**: Participants in the TechXchange classroom will be provided with a development VM with pre-installed software.

Diff for: docs/part1/10-project.md

+19-4
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,14 @@
55
ssh-keygen -t rsa -b 4096 -N '' -f ./lab-key
66
```
77
This command generates two files in the current directory: `lab-key` (the private key) and `lab-key.pub` (the public key).
8-
8+
Verify that the keys have been created in the current directory.
9+
```
10+
ls lab-key*
11+
```
12+
This should return:
13+
```
14+
lab-key lab-key.pub
15+
```
916
2. Access the [VSI on VPC landing zone Deployable Architecture](https://cloud.ibm.com/catalog/architecture/deploy-arch-ibm-slz-vsi-ef663980-4c71-4fac-af4f-4a510a9bcf68-global?catalog_query=aHR0cHM6Ly9jbG91ZC5pYm0uY29tL2NhdGFsb2cjcmVmZXJlbmNlX2FyY2hpdGVjdHVyZQ%3D%3D)
1017
3. On the Overview page, make sure the following is selected:\
1118
a. Product version: **Select the latest** (4.4.7 at the time of writting)
@@ -14,7 +21,7 @@
1421
![Overview page](../images/part-1/10-overview-page.png)
1522
4. Click **Review deployment options** on the bottom right
1623
5. Click **Add to project**
17-
6. Under _Create New_, input a name that you wish to provide to the project. For example "Landing Zone Lab"
24+
6. Under _Create New_, input a name that you wish to provide to the project. For example "\<your initials\> Landing Zone Lab"
1825
7. Click **Add** on the bottom right
1926
8. Under _Configure -> Security_ section, set the following:\
2027
a. Authentication: untoggle _Use a secret_ and paste your IBM Cloud API key input the box
@@ -29,10 +36,18 @@
2936
a. `add_atracker_route`: false
3037
11. Click **Save**
3138
12. Click **Validate**
32-
13. The project will go through different steps in validation. When it completes, the validation might fail due to a rule within the Security and compliance section. In the _Approval not recommended_ section, add a comment and click **Override and approve** to start provisioning.
39+
13. The project will go through different steps in validation. When it completes, the validation is marked as successful. In the _Approval pending_ section, add a comment and click **Approve** to start provisioning.
3340

3441
![Validation](../images/part-1/10-validation.png)
3542

3643
14. Click **Deploy**
3744

38-
Note: The deploy will take approximately 15 minutes to complete
45+
46+
:information_source: **Note**: The deploy will take approximately 15 minutes to complete. Some suggestions during this time:
47+
- You may following the execution logs. Of interest:
48+
![Deployment](../images/part-1/10-deployment.png)
49+
- The terraform plan steps shows the list of resources that are going to be created.
50+
- The terraform apply steps shows the resources that are being created.
51+
- You may also navigate to the [VPC section](https://cloud.ibm.com/vpc-ext/vpcLayout) and the [resource list](https://cloud.ibm.com/resources) in your account to see the resources starting to spawn up as you refresh the screen during the execution.
52+
- Explore in more details some of the materials in the [introduction section](README)
53+
- Coffee ☕

Diff for: docs/part1/20-operator-access.md

+16-11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Providing operator access to the VPC landing zone
22

3-
By default, network access to the VPC landing zone topology is locked down for security compliance reasons. In this section, you will open up the necessary access for an operator to access the VPC environment, including deploying application on the VSI's located in the workload VPC.
3+
## Introduction
4+
5+
By default, network access to the VPC landing zone topology is locked down for security compliance reasons. In this section, you will open up the necessary access for an operator to access the VPC environment, including deploying application on the VSIs located in the workload VPC.
46

57
Operator access is provided through the _Management VPC_. There are multiple ways to give operator access to the VPC landing zone, with varying level of security, compliance, and ease of enablement:
68

@@ -9,9 +11,11 @@ Operator access is provided through the _Management VPC_. There are multiple way
911
- Deploying a site-to-site VPN solution in the management VPC
1012
- Deploying a certified bastion solution, such as Gravitational Teleport in the management VPC.
1113

12-
This part of the lab shows how to expose one of the VSI's in the management VPC as a ‘jump-box’, as this is one of the simplest way to proceed, albeit not being strongly secure. The Going Further section below provides links to some of the other ways to provide operator access.
14+
This part of the lab shows how to expose one of the VSI in the management VPC as a 'jump-box', as this is one of the simplest way to proceed, albeit not being strongly secure. The [Going Further](./part1/50-going-further) section below provides links to some of the other ways to provide operator access.
15+
16+
## Steps
1317

14-
Perform the following actions to provide operator access to a VSI in the management VPC
18+
Perform the following actions to enable public ssh access to one of the VSI in the management VPC. This VSI will be the unique operator entry point ('jump-box') to the landing zone VPC topology.
1519

1620
1. Access the [Virtual server instances for VPC list](https://cloud.ibm.com/vpc-ext/compute/vs)
1721
2. Verify that the region is set to the region you provisioned your resources and click the VSI labeled _&lt;initials&gt;-management-server-1_
@@ -20,16 +24,17 @@ Perform the following actions to provide operator access to a VSI in the managem
2024

2125
![Floating IP](../images/part-1/20-floating-ip.png)
2226

23-
4. In the [Security Groups for VPC](https://cloud.ibm.com/vpc-ext/network/securityGroups), click the one label _&lt;initials&gt;-management_
24-
5. Go to the Rules section and allow port 22 for inbound by clicking **Create** in the _Inbound rules_ section (Note: Security groups are stateful so you don’t need to add a corresponding outbound rule)
27+
4. Take note of the public Floating IP. This IP will be used in a subsequent step.
28+
5. In the [Security Groups for VPC](https://cloud.ibm.com/vpc-ext/network/securityGroups), click the one labelled _&lt;initials&gt;-management_
29+
6. Go to the Rules section and allow port 22 for inbound by clicking **Create** in the _Inbound rules_ section (Note: Security groups are stateful so you don’t need to add a corresponding outbound rule)
2530

2631
![Allow SSH in Security group](../images/part-1/20-ssh-sg.png)
2732

28-
6. Click **Create**
29-
7. In the [Access control lists for VPC](https://cloud.ibm.com/vpc-ext/network/acl), click the one labeled _&lt;initials&gt;-management-acl_
30-
8. Create the following ACL inbound rule:
33+
7. Click **Create**
34+
8. In the [Access control lists for VPC](https://cloud.ibm.com/vpc-ext/network/acl), click the one labeled _&lt;initials&gt;-management-acl_
35+
9. Create the following ACL inbound rule:
3136
![SSH ACL Inbound rule](../images/part-1/20-ssh-acl-inbound.png)
32-
9. Create the folloiwng ACL outbound rule:
37+
10. Create the folloiwng ACL outbound rule:
3338
![SSH ACL Outbound rule](../images/part-1/20-ssh-acl-outbound.png)
34-
10. You will now be able to access the Floating IP address that you provisioned in a prior step. On your workstation, issue the following command from a terminal\
35-
`ssh -i key root@<Floating IP of Virtual server instance>`
39+
11. You will now be able to access the 'jump-box' through the public Floating IP address that you provisioned in a prior step. On your workstation, issue the following command from a terminal\
40+
`ssh -i ./lab-key root@<Floating IP of Virtual server instance>`

Diff for: docs/part1/30-apache-server.md

+10-7
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
In this section, you will install the Apache server on a workload VSI.
44

5-
1. By default, the workload Virtual server instances are locked down from the management VPC. You will need to allow access through the Access control list. In the [Access control list](https://cloud.ibm.com/vpc-ext/network/acl), click the ACL labeled _&lt;initials&gt;-workload-acl_.
5+
1. By default, the workload VSI (Virtual Server Instances) are locked down from the management VPC. You will need to allow access through the Access control list. In the [Access control list](https://cloud.ibm.com/vpc-ext/network/acl), click the ACL labeled _&lt;initials&gt;-workload-acl_.
66
1. Create an ACL inbound rule to allow ssh access from the Management VPC
77
![Workload SSH ACL Inbound rule](../images/part-1/30-workload-ssh-acl-inbound.png)
88
2. Create an ACL outbound rule to allow ssh access from the Management VPC
@@ -13,16 +13,19 @@ In this section, you will install the Apache server on a workload VSI.
1313
2. Create an ACL outbound rule to allow ssh access from the Workload VPC
1414
![Management SSH ACL Outbound rule](../images/part-1/30-mgmt-ssh-acl-outbound.png)
1515
3. Access the workload VSI by doing the following:
16-
1. Copy the private key labeled _lab_key_ to the bastion host
16+
1. Navigate to [Virtual server instances for VPC](https://cloud.ibm.com/vpc-ext/compute/vs). Take note of the private IP ("Reserved IP") for the VSI labeled *initials-workload-server-1* (10.40.10.4 in this example).
17+
![private IP](../images/part-1/30-private-ip.png)
18+
2. From your machine, copy the private key labeled *lab_key* to the bastion host
1719
`scp -i lab-key lab-key root@<Floating IP address of bastion host>:/root`
18-
2. SSH to the bastion host
19-
`ssh -i key root@<Floating IP of Virtual server instance>`
20-
3. Change permissions of the private key
20+
3. SSH to the bastion host
21+
`ssh -i ./lab-key root@<Floating IP of Virtual server instance>`
22+
4. Change permissions of the private key
2123
`chmod 600 lab-key`
22-
4. SSH to the workload VSI
23-
`ssh -i lab-key root@<Private IP address of the workload VSI>`
24+
5. SSH to the workload VSI
25+
`ssh -i ./lab-key root@<Private IP address of the workload VSI>`
2426
4. Install the Apache web server by issuing the following commands:
2527
```shell
2628
apt-get update
2729
apt-get install apache2 --yes
2830
```
31+
5. (Optional) You may repeat the steps 3 and 4 for the workload VSIs *<initials>-workload-server-2* and *<initials>-workload-server-3*

Diff for: docs/part1/40-expose-web-app.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Exposing the web application to the internet
22

3-
In this section, you will expose the web application to the internet so you can access it.
3+
In this section, we will expose the web pages to the internet through a VPC load balancer so anyone can access them.
44

55
1. Create a public load balancer to expose the web application. Access the [Load balancers for VPC](https://cloud.ibm.com/vpc-ext/network/loadBalancers) page and click **Create**.
66
2. Set the following for the load balancer:
@@ -28,9 +28,10 @@ In this section, you will expose the web application to the internet so you can
2828
![ACL inbound rule](../images/part-1/40-acl-inbound.png)
2929
- Create an outbound rule
3030
![ACL outbound rule](../images/part-1/40-acl-outbound.png)
31-
5. You web application is exposed:
31+
5. It can take several minutes for your load balancer to provision. Check and wait until the status is set to Active in [Load balancers for VPC](https://cloud.ibm.com/vpc-ext/network/loadBalancers). You may need click the refresh button in the page periodically.
32+
6. You web application is exposed:
3233
- Retrieve the FQDN of your Load balancer
3334
- [Access the Load Balancer list](https://cloud.ibm.com/vpc-ext/network/loadBalancers) and click your provisioned load balancer
3435
- Copy the value under _Hostname_
35-
- Issue the following command:
36+
- On your machine, open up a web browser pointing to `http://<Hostname of your load balancer>` . You may also test connectivity by issuing the following command:
3637
`curl http://<Hostname of your load balancer>`

0 commit comments

Comments
 (0)