Your Perfect Assignment is Just a Click Away

We Write Custom Academic Papers

100% Original, Plagiarism Free, Customized to your instructions!


SBHSES Exploring Infrastructure as Code with AWS VPC Technical Report

SBHSES Exploring Infrastructure as Code with AWS VPC Technical Report


Project 2: Explore Infrastructure as Code

Print Project

In Project 1, as a BallotOnline network engineer, you carried out a technical investigation of networking issues crucial to the company’s cloud deployment. Now, management has tasked you with addressing another important component of cloud computing—automation and consistency of deployment and administrative tasks. You will use Amazon Web Services’ cloud environment for your investigations.

In this project, you have been appointed the company’s first cloud engineer—a position devoted to cloud deployment.

To start, you will continue network investigation, further exploring networking capabilities in the cloud, and becoming familiar with AWS VPC—virtual private cloud, which is a private virtual network into which AWS customers deploy their cloud resources. You will learn about networking components associated with AWS VPC, and their default instances and the nondefault ones which require setup by the customer.

Next, you will become acquainted with the basic infrastructure as code (IaC) capability with command-line interface (CLI). It is a command language that allows you to write scripts that you can invoke to automatically provision and maintain your cloud infrastructure. You will then complete a lab exercise in which you will provision an AWS VPC with some of the related components using AWC CLI commands.

Then, you will explore a notation for describing detailed configurations of AWS resources, like EC2 instances, called CloudFormation (CF). You will learn about CF templates and complete the lab exercise designing a simple cloud configuration in the CF Template Designer tool.

Next, you will explore the ultimate programmatic interfaces to the cloud—the cloud APIs. You will explore and install the Python AWS SDK, and then analyze and run a provided Python script provisioning a tagged EC2 instance.

The final submission of this project will be a technical report discussing a cloud network configuration for BallotOnline, as well as the IaC topics and exploring the ways IaC can be used by BallotOnline in its cloud deployments.

Step 1: Virtual Networks in the Cloud

In Project 1, you became familiar with software-defined networking, a way of programmatically specifying network configurations. In this step, you will continue to explore networking in the cloud, learning how virtual networks are created on demand and the associated virtual networking elements. You will then propose the virtual network/subnetwork configuration for BallotOnline voting application.

You will use Amazon Web Services’ networking offering as a learning environment and become familiar with the AWS Virtual Private Cloud (VPC) concept and related components. It is also important to understand the geographical layout of AWS networking, as related to AWS regions and availability zones.

In the next step, you will take a closer look at the command line interface with a lab exercise.


Step 2: Interfacing With the Cloud—Command-Line Interfaces

Provisioning cloud resources using the cloud provider’s internet portal is great for learning, setting up demos, etc. But it does not allow for automation of tasks, which is necessary for cloud engineers responsible for creating and maintaining corporate cloud deployment.

Automation of tasks is crucial for ensuring continuity, repeatability, and consistency of administrative activities. Cloud resources are created and maintained by software implementing virtualization, SDN, etc., and this enables programmatic interfaces to their capabilities, making the infrastructure as code (IaC) paradigm a reality.

As the BallotOnline cloud engineer, you will be responsible for automating cloud administration tasks. In this step, you will explore the most basic IaC tool—the scripting framework. With it, you can define lists of commands to be executed automatically on demand.

Most cloud providers offer scripting interfaces for their cloud offerings. In this step, you will become familiar with the AWS command-line interface (CLI).

You will complete the Lab 1 AWS CLI, in which you will first create an AWS Cloud9 development environment and then use AWS CLI in it to provision a virtual private cloud (VPC) and attach a tag to it. Then, you will create an internet gateway, tag it, and attach the gateway to your VPC. You will verify all the steps by inspecting provisioned resources in the AWS console.

You will create a lab report as per the lab guide, describing the steps you’ve taken with all the screenshots requested in the guide. You will also describe how using scripting framework like AWS CLI can help BallotOnline in administering its cloud deployment.

In the next step, you will look at declarative programming using a framework from AWS.


Step 3: Interfacing With the Cloud—Declarative Resource Definitions

An alternative to executing scripting command commands with options is to describe the desired effect of their execution—the desired configuration of resources. This is called declarative programming. Most cloud vendors make declarative frameworks available in their cloud offerings.

The description of desired configuration is done by defining templates using some declarative notations. The most popular are YAML (“Yaml Ain’t Markup Language”) and JSON (JavaScript Object Notation).

JSON is a simple notation using nested key-value pairs to describe hierarchical structures of named attributes. You’ve seen examples of it as output from AWS CLI commands in the previous step.

As before, you will use Amazon AWS as the exploration environment. Its declarative IaC feature is the CloudFormation (CF) framework.

You will complete Lab 2 AWS CloudFormation in which you will become familiar with CF templates, and then use CF Template Designer to define a stack containing a VPC with an internet gateway (similar to the previous step), tag them, attach the gateway to the VPC, and provision the stack.

You will create a lab report as per the lab guide, describing the steps you’ve taken with all the screen shots requested in the guide. You will also describe how using declarative IaC features can help BallotOnline in administering its cloud deployment.

In the next step, you will continue your lab work with a Python script.


Step 4: Interfacing With the Cloud—Cloud APIs

The fact that cloud offering features are software-defined finds its ultimate reflection in rich cloud API libraries most cloud providers offer, so that customers can interact with their cloud deployments directly from the code of their software products. Cloud API libraries are available for popular programming languages and are often referred to as software development kits (SDKs).

You will complete Lab 3 Cloud API in which you will become familiar with AWS SDK for the Python programming language. You will explore and install the Python SDK in your Cloud9 environment. Next, you will take a look at a Python script that provisions an EC2 instance and tags it. You will run the script and verify that the instance has been provisioned successfully.

You will create a lab report as per the lab guide, describing the steps you’ve taken with all the screenshots requested in the guide. You will also describe how using cloud APIs can help BallotOnline in administering its cloud deployment.

In the final step, you will compile your technical report.

Step 5: Submit Your Final Report

As your final Project 2 submission, you will write a technical report about AWS VPCs and infrastructure as code tools. It will include technical review of the topics covered in the project, along with recommendations for how BallotOnline can take advantage of these.

Follow the Infrastructure as Code Technical Report Templateto cover all the topics required. Make sure you provide captions to clearly identify sections of your report. The technical review part of the report should be eight to 12 pages long. You should also resubmit the Project 2 lab reports, with incorporated feedback from the steps if any.

Order Solution Now

Our Service Charter

1. Professional & Expert Writers: Writers Hero only hires the best. Our writers are specially selected and recruited, after which they undergo further training to perfect their skills for specialization purposes. Moreover, our writers are holders of masters and Ph.D. degrees. They have impressive academic records, besides being native English speakers.

2. Top Quality Papers: Our customers are always guaranteed papers that exceed their expectations. All our writers have +5 years of experience. This implies that all papers are written by individuals who are experts in their fields. In addition, the quality team reviews all the papers before sending them to the customers.

3. Plagiarism-Free Papers: All papers provided by Writers Hero are written from scratch. Appropriate referencing and citation of key information are followed. Plagiarism checkers are used by the Quality assurance team and our editors just to double-check that there are no instances of plagiarism.

4. Timely Delivery: Time wasted is equivalent to a failed dedication and commitment. Writers Hero is known for timely delivery of any pending customer orders. Customers are well informed of the progress of their papers to ensure they keep track of what the writer is providing before the final draft is sent for grading.

5. Affordable Prices: Our prices are fairly structured to fit all groups. Any customer willing to place their assignments with us can do so at very affordable prices. In addition, our customers enjoy regular discounts and bonuses.

6. 24/7 Customer Support: At Writers Hero, we have put in place a team of experts who answer all customer inquiries promptly. The best part is the ever-availability of the team. Customers can make inquiries anytime.