- Lab
- A Cloud Guru

Build Solutions across VPCs with Peering
A VPC peering connection is a networking connection between two VPCs that enables you to route traffic between them using private IPv4 addresses or IPv6 addresses. In this lab, you will create a new VPC for your WordPress blog to run from. You will then create a VPC peering connection between the new VPC and an existing database VPC. By the end of this lab, you will understand how to create a new VPC from scratch, attach internet gateways, edit routing tables, and peer multiple VPCs together.

Path Info
Table of Contents
-
Challenge
Create Web_VPC Subnets and Attach a New Internet Gateway
Using the AWS console, create the
Web_VPC
VPC with the192.168.0.0/16
IPv4 CIDR block. Create theWebIG
internet gateway. Modify the route table to attach the internet gateway to theWeb_VPC
. -
Challenge
Create a Peering Connection
Create a peering connection called
DBtoWeb
. Peer the newly createdWeb_VPC
with theDB_VPC
. EnsureDB_VPC
is the requester andWeb_VPC
is the accepter. Accept the request. -
Challenge
Create an EC2 Instance and configure Wordpress
Launch a new public facing Ubuntu Server 20.04 LTS EC2 instance in the
Web_VPC
VPC using the provided bootstrap user data script.#!/bin/bash sudo apt update -y sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip perl mysql-server apache2 libapache2-mod-php php-mysql -y wget https://github.com/ACloudGuru-Resources/course-aws-certified-solutions-architect-associate/raw/main/lab/5/wordpress.tar.gz tar zxvf wordpress.tar.gz cd wordpress wget https://raw.githubusercontent.com/ACloudGuru-Resources/course-aws-certified-solutions-architect-associate/main/lab/5/000-default.conf cp wp-config-sample.php wp-config.php perl -pi -e "s/database_name_here/wordpress/g" wp-config.php perl -pi -e "s/username_here/wordpress/g" wp-config.php perl -pi -e "s/password_here/wordpress/g" wp-config.php perl -i -pe' BEGIN { @chars = ("a" .. "z", "A" .. "Z", 0 .. 9); push @chars, split //, "!@#$%^&*()-_ []{}<>~\`+=,.;:/?|"; sub salt { join "", map $chars[ rand @chars ], 1 .. 64 } } s/put your unique phrase here/salt()/ge ' wp-config.php mkdir wp-content/uploads chmod 775 wp-content/uploads mv 000-default.conf /etc/apache2/sites-enabled/ mv /wordpress /var/www/ apache2ctl restart
Configure Wordpress by editing
/var/www/wordpress/wp-config.php
to pointDB_HOST
to the RDS database endpoint. -
Challenge
Modify the RDS Security Groups to Allow Connections from the Web_VPC VPC
The RDS instance requires a security group modification to allow access from
192.168.0.0/16
. -
Challenge
Test WordPress
Visit the IP address of your EC2 instance in a web browser, and confirm WordPress is working correctly and communicating with the RDS instance via VPC peering.
What's a lab?
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.

