Skip to content

Commit ba97589

Browse files
authored
docs: editorial review of part 2 (#4)
* docs: editorial review of part 2 review for IBM style, grammar, terminology, and for consistency with part 1. Signed-off-by: Allen Dean <[email protected]> * docs: update after review Signed-off-by: Allen Dean <[email protected]> --------- Signed-off-by: Allen Dean <[email protected]>
1 parent 20c4d9b commit ba97589

12 files changed

+295
-341
lines changed

docs/README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# Seamless Deployment: From Provisioning to Runtime With the IBM Cloud VPC Landing Zone
1+
# Seamless Deployment: From Provisioning to Runtime With the IBM Cloud VPC landing zone
22

33
The introduction of IBM Cloud [deployable architectures](https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-faqs) makes it easy to provision predefined architecture in no time.
44

55
## 📖 What you will learn
66

77
In this hands-on lab, you will learn how to work with the VPC landing zone deployable architecture to accomplish these goals.
88

9-
1. Create a customized VPC-based topology from the VPC Landing Zone deployable architecture.
9+
1. Create a customized VPC-based topology from the VPC landing zone deployable architecture.
1010
2. Deploy and expose a web application on this secure topology. For this lab, we use an Apache service as an example.
1111
3. Share this deployable pattern with your enterprise through the IBM Cloud private catalog.
1212

@@ -18,7 +18,7 @@ Two labs are available. The two labs are independent. However, the first lab is
1818

1919
In [Lab 1](./part1/00-objectives), you take the perspective of a cloud infrastructure engineer:
2020

21-
1. Use the [Landing Zone Deployable Architecture](https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-overview) to automatically deploy a secure VPC-based topology in an IBM Cloud account.
21+
1. Use the [landing zone deployable architecture](https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-overview) to automatically deploy a secure VPC-based topology in an IBM Cloud account.
2222
2. Manually customize the deployed infrastructure in the account in the following ways:
2323
a. Provide operator access through a "jump box" VSI.
2424
b. Install an Apache server in one of the workload VPCs that serves the web pages.

docs/about/20-vpc-landing-zone.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# VPC Landing Zone
1+
# VPC landing zone
22

3-
IBM VPC Landing Zone (also referred to as "SLZ" for Secure Landing Zone) is [Infrastructure-As-Code](https://en.wikipedia.org/wiki/Infrastructure_as_code) automation that enables you to create a fully customizable VPC environment within a single region. The VPC Landing Zone is implemented in Terraform and automates the provisioning, configuring, and integration of several services that participate in the realization of a compliant VPC-based topology that is aligned with the documented [IBM Cloud for Financial Cloud Services Framework](./about/10-fs-cloud).
3+
IBM VPC landing zone (also referred to as "SLZ" for secure landing zone) is [Infrastructure-As-Code](https://en.wikipedia.org/wiki/Infrastructure_as_code) automation that enables you to create a fully customizable VPC environment within a single region. The VPC landing zone is implemented in Terraform and automates the provisioning, configuring, and integration of several services that participate in the realization of a compliant VPC-based topology that is aligned with the documented [IBM Cloud for Financial Cloud Services Framework](./about/10-fs-cloud).
44

55
The automation is available as a set of [Terraform modules on GitHub](https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone). The automation creates and configures all of the resources necessary to create a secure and compliant topology:
66
- A resource group for cloud services and for each VPC
@@ -12,10 +12,10 @@ The automation is available as a set of [Terraform modules on GitHub](https://gi
1212
- Virtual Private Endpoint (VPE) for Cloud Object Storage in each VPC
1313
- A VPN gateway in the management VPC
1414

15-
# Landing Zone patterns
15+
# Landing zone patterns
1616

1717

18-
VPC Landing Zone comes with four fully functional patterns that follow the IBM Cloud Framework for Financial Services reference architecture:
18+
VPC landing zone comes with four fully functional patterns that follow the IBM Cloud Framework for Financial Services reference architecture:
1919

2020
- VPC pattern
2121
- VPC with Virtual Servers ("VSIs") – which the lab uses.

docs/about/30-deployable-arch.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ In other words, a user can run the Terraform automation behind a deployable arch
1212

1313
![Deployable architecture console](../images/about-deployable-arch.png)
1414

15-
The Landing Zone Terraform module and patterns that are described in [🌍 VPC Landing Zone](./about/20-vpc-landing-zone.md) have a corresponding [deployable architecture](https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-overview) in IBM Cloud. To help you learn about deployable architectures, this lab provides steps for the deployable architecture in IBM Cloud rather than by running Terraform commands against the open source GitHub version.
15+
The landing zone Terraform module and patterns that are described in [🌍 VPC landing zone](./about/20-vpc-landing-zone.md) have a corresponding [deployable architecture](https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-overview) in IBM Cloud. To help you learn about deployable architectures, this lab provides steps for deploying the deployable architecture in IBM Cloud rather than by running Terraform commands against the open source GitHub version.
1616

17-
IBM-maintained deployable architectures are just like the Landing Zone deployable architecture in these ways:
17+
IBM-maintained deployable architectures are just like the landing zone deployable architecture in these ways:
1818

1919
- Provide the same level of customer support as any other IBM Cloud product
20-
- [Come with extensive documentation](https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-overview)
21-
- Are maintained to be current over time
20+
- Come with extensive [documentation](https://cloud.ibm.com/docs/secure-infrastructure-vpc?topic=secure-infrastructure-vpc-overview)
21+
- Are maintained to stay current

docs/part1/00-objectives.md

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

33
In lab 1, you provision a secure VPC-based topology that is aligned with the **VSI on VPC landing zone** deployable architecture, as shown in the following diagram.
44

5-
![](https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-landing-zone/main/reference-architectures/vsi-vsi.drawio.svg 'size=60%' )
5+
![VSI on VPC landing zone architecture diagram](https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-landing-zone/main/reference-architectures/vsi-vsi.drawio.svg 'size=60%' )
66

77

88
After you provision the VPC, you customize the deployed infrastructure in the following ways:
@@ -23,7 +23,7 @@ Make sure that you meet the following prerequisites before you begin the lab.
2323
- An IBMid
2424
- API key with the following permissions
2525

26-
?> _TODO_ review
26+
?> _TODO_ add permissions for API key
2727

2828
- A development computer with the following software.
2929
- [Terraform](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli)

docs/part1/10-project.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Deploying the Landing Zone VSI pattern through IBM Cloud projects
1+
# Deploying the landing zone VSI pattern through IBM Cloud projects
22

33
1. On your computer, create an SSH key pair by issuing the following command:
44

@@ -31,7 +31,7 @@
3131

3232
1. Click **Review deployment options** on the lower right.
3333
1. Click **Add to project**.
34-
1. In **Create New**, enter a name for the project. For example, "\<your initials\> Landing Zone Lab". You can leave the other information as is.
34+
1. In **Create New**, enter a name for the project. For example, "\<your initials> landing zone lab". You can leave the other information as is.
3535
1. Click **Add** on the lower right.
3636

3737
1. Configure the project

docs/part2/00-objectives.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# Lab 2: Automating deployment, and sharing through a private IBM Cloud Catalog
1+
# Lab 2: Automating deployment and sharing through a private catalog
22

3-
Lab 1 shows how you can leverage existing landing-zone automation to deploy most of the topology, and then customize and deploy on top of that infrastructure.
3+
In lab 1, you deployed most of the landing zone topology, and then customized the infrastructure.
44

5-
The purpose of lab 2 is to show of the manual steps in lab 1 can be fully automated. Lab 2 will also show how the fully automated custom solution can be shared with other users in your enterprise through the [IBM Cloud Catalog](https://cloud.ibm.com/catalog).
5+
Now in lab 2, you use automation to accomplish what you did manually in lab 1. Lab 2 also demonstrates how you can share the fully automated custom solution with other users in your enterprise through the [IBM Cloud catalog](https://cloud.ibm.com/catalog).
66

7-
Lab 2 assumes a basic knowledge of [Terraform](https://www.ibm.com/topics/terraform).
7+
Lab 2 assumes a basic knowledge of [Terraform](https://www.ibm.com/topics/terraform).

docs/part2/10-customizing.md

+41-60
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,45 @@
11
# Customizing the landing zone topology
22

3-
## Overview of the landing-zone customization options
4-
5-
The Landing Zone module is designed to enable both lightweight and deep
6-
customizations of the VPC topology, inclusive of all associated
7-
services that are deployed to make the VPC topology compliant. In a nutshell, there are
8-
two ways the topology can be customized:
9-
1. By using Terraform input variables. The module exposes over 70 input
10-
variables that can be used to tweaks aspects of the VPC topology
11-
that is deployed. See them as "knobs" that you can turn to slightly
12-
adjust the desired VPC topology.
13-
2. By using a json definition, which enables deeper and
14-
broader types of customizations. The Landing Zone module accepts a json input in the form of a file or through a string containing a json definition. Using a json definition, you can fully
15-
customize all aspects of the topology, beyond the use of the
16-
Terraform input variables.
17-
18-
## Defining our custom topology with a json definition
19-
20-
In this lab, we are going to use the json-based approach to define a
21-
topology that matches the manual steps followed in lab 1 of the
22-
lab. Starting from the definition for the standard VSI landing zone pattern as a starting point, we make the following customizations:
23-
- Expose one of the VSI in the management VPC through a public floating IP -- this is our "jump box".
24-
- Add a public VPC load balancer serving public http traffic and distribiting requests to the VSIs in the workload VPC
25-
- All necessary adjustments to the network ACL and security group to accommodate inbound and outbound traffic to the management jump box (ssh access) and the workload (http).
26-
27-
### Creating the json definition
28-
29-
There are three ways to produce a json definition that codify the desired
30-
topology -- ranked by order of complexity:
31-
1. The first way is to use the Graphical User Inferface tool provided
32-
at
33-
<https://slz-gui.15z7evpngrsf.us-south.codeengine.appdomain.cloud/>
34-
to guide your through a step-by-step documented wizard leading to
35-
the produce a valid JSON file. The GUI tool also allows you to
36-
import an existing json file and start customizations from there.
37-
![](../images/part-2/cdbc891686d226024c1d5da0aef003a858508460.png)
38-
2. The second way is to start making customization through the
39-
terraform input variable. The Landing Zone module has got one output
40-
named "config" that contains a JSON definition that includes the
41-
customizations made through the terraform input variables. From that
42-
point, you can make further customization manually or through the
43-
GUI tool mentioned above.
44-
3. The third way is to start from a copy of the json definition of one
45-
of the 4 patterns provided out-of-the-box with the Landing Zone
46-
module [here](https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone/tree/main/patterns)
47-
. For example, the JSON file for the standard VSI-based Landing Zone
48-
is located under the [vsi directory](https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone/blob/main/patterns/vsi/override.json). From that point, make customization to the copy of that JSON file
49-
either through the GUI or manually.
50-
51-
### Creating the json definition
52-
53-
In this lab, we provide the JSON file containing those customizations
54-
[here](https://github.com/IBM/infra-to-app-with-landing-zone/blob/main/custom-slz/override.tftpl) .
55-
56-
?> _TODO_ ensure the gui is updated before the lab
57-
58-
You may take a few moment to explore the content of the provided json definition:
59-
1. Import the json definition in the Graphical User Inferface tool provided at <https://slz-gui.15z7evpngrsf.us-south.codeengine.appdomain.cloud/>.
60-
2. Click the Import JSON button and copy paste the content of the JSON definition.
61-
![](../images/part-2/override-gui.png)
62-
3. After import, you can use the GUI to explore the various facet of the topology using the right-hand menu. Of particular interest in the scope of the customizations are the [VPC Access control](https://slz-gui.15z7evpngrsf.us-south.codeengine.appdomain.cloud/nacls), [Security Groups](https://slz-gui.15z7evpngrsf.us-south.codeengine.appdomain.cloud/securityGroups), and [Virtual Server Instances](https://slz-gui.15z7evpngrsf.us-south.codeengine.appdomain.cloud/vsi) sections.
3+
## Two ways to customize
634

5+
The landing zone module is designed to enable both lightweight and deep customizations of the VPC topology, including all the services that are deployed to make the VPC topology compliant.
646

7+
In a nutshell, you can customize the topology in two ways:
8+
9+
- By using Terraform input variables.
10+
11+
The module accepts more than 70 input variables that you can use to tweak the VPC topology. Consider the input variables as "knobs" that you can turn to adjust the topology.
12+
- By passing a JSON string value to the `override.json` variable.
13+
14+
The override file enables deeper and broader types of customizations. By using a JSON file, you can fully customize aspects of the topology beyond what you can achieve with Terraform input variables.
15+
16+
## Defining our custom topology with a JSON definition
17+
18+
In this lab, you use the JSON override file to define a topology that matches the manual steps that you followed in the lab 1.
19+
20+
As a refresher, here's what you did in lab 1:
21+
22+
- Created a VPC-topology based on the standard SLZ pattern.
23+
- Exposed one VSI in the management VPC through a public floating IP address (our "jump box").
24+
- Exposed one VSI in the workload VPC behind a public load balancer.
25+
- Made the necessary adjustments to the network ACL and security group to accommodate inbound and outbound traffic to the management jump box and the workload.
26+
27+
### Creating the JSON definition
28+
29+
You can create a JSON file that codifies the topology that you want in one of three ways. The following list orders the methods from least complex to most complex:
30+
31+
- Use the [secure landing zone wizard](https://slz-gui.15z7evpngrsf.us-south.codeengine.appdomain.cloud/) to produce a valid JSON file.
32+
33+
The wizard also supports importing an existing JSON file and start from there.
34+
35+
![screenshot of the secure landing zone wizard](../images/part-2/cdbc891686d226024c1d5da0aef003a858508460.png)
36+
- Customize the definition through a Terraform input variable.
37+
38+
The landing zone module produces an output that is named `config`. The `config` output contains a JSON definition with all the customizations that are made through the Terraform input variables. You can start with this output and make more customizations, either manually or through the wizard in the previous method.
39+
- The third way is to start from a copy of the JSON definition in one of the four [patterns](https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone/tree/main/patterns) that are provided with the landing zone module.
40+
41+
For example, the JSON file for the standard VSI-based landing zone is located under the [vsi](https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone/blob/main/patterns/vsi/override.json) directory. You can customize a copy of that JSON pattern file either manually or through the wizard.
42+
43+
### Creating the JSON definition
44+
45+
For this lab, use the customized JSON file at https://github.com/IBM/infra-to-app-with-landing-zone/blob/main/custom-slz/override.tftpl.

0 commit comments

Comments
 (0)