Last updated on
Jun 12, 2024

What is VPC in AWS – Table of Content

What is Amazon VPC?

Amazon Virtual Private Cloud or Amazon VPC is an AWS service that provides you with a separate area of the cloud. Having this separate area, you can launch your own defined AWS services in a virtual network.

Here, in VPC you have complete control of your virtual environment which includes IP address range, the configuration of route tables, the creation of subnets, and network gateways. Also, the network configurations can be easily customised for the Amazon VPC. 

Like all the other AWS services, Amazon VPC provides top-notch security. It has multiple layers of security which include network access control lists and security groups to manage the Amazon EC2 instances’ access in each subnet.

We have the perfect professional AWS Training course for you. Enroll now!

Now to understand the entire scenario of VPC, even better, let’s have a look at the architecture of VPC.

Architecture of VPC

Architecture of VPC

  • The above picture shows the architecture of VPC, so there’s an outer region and inside that outer region there’s an Internet Gateway and Virtual Private Gateway.
  • Internet Gateway and Virtual Private Gateway are what help in the connection with the VPC. These connections pass through the router which directs the coming traffic to the router table.
  • The two Router Tables then direct the traffic to Network ACL, which is like a firewall for security purposes. 
  • The Network ACLs can either accept or deny the roles. Also, the IP Address can be blocked on the Network ACL. 
  • The respective Network ACL signals to their respective security groups to access lines against the EC2 Instance. 
  • Now, there are two subnets – Public Subnet and Private Subnet. 
    As the name suggests, in the public subnet internet can be accessed by the EC2, while in the private subnet EC2 instance cannot be accessed through the internet. 
  • There’s also a process called “Jump Boxes” which enables you to connect the EC2 Instances (the public subnet can be connected to the private subnet’s instance).

Now, when we know about the architecture of VPC, it’s time to understand the different elements of VPC. 

Top 50+ Frequently Asked AWS Interview Questions !

AWS Training

  • Master Your Craft
  • Lifetime LMS & Faculty Access
  • 24/7 online expert support
  • Real-world & Project Based Learning

Elements of Amazon VPC.

The elements included in the Amazon VPC are:

IPv6 and IPv4 address blocks

VPC IP addresses use CIDR (Classless Interdomain Routing) IPv6 and IPv4 blocks to define their ranges. Primary and secondary CIDR blocks can be added to the VPC if the secondary Classless Interdomain Routing block comes from a similar address range as the primary block.

Subnet Creation

The EC2 Instance that is launched runs inside a specific VPC subnet. And, each subnet’s CIDR as a subset of the VPC Classless Interdomain Routing block. Every subnet separates its respective traffic from all the other VPC subnet traffic. It must be noted that a subnet can only have one CIDR block and different subnets are to be designated to handle diverse traffic types. 

Route Tables

Route Tables are actually the rule book that decides how much network traffic must be directed inside the VPC and subnets. A default route table is created by the VPC called the main route table. And, this main route table has an automatic association with other VPC subnets. 

There are two options – either the main route table can be updated and used to direct network traffic OR a new route table can be created for individual subnet traffic.

Internet Connectivity

Each VPC configuration is able to host one Internet Gateway and hence provide NAT or the Network Address Translation services using a NAT Gateway or NAT instances.

Elastic IP Addresses (EIPs)

Elastic IP Addresses or EIPs are IPv4 addresses permanently allocated to the user’s AWS account. The EIPs enable public internet access to the following:

  • An instance
  • Elastic Network Interface or ENI
  • Miscellaneous services that require a public IP address.
Network/Subnet Security

In the VPC architecture, you had seen there’s something called the “security group,” so VPCs use those security groups to give protection for instances. These security groups are referred to as firewalls by AWS.  

Additional Networking Services

There are several more services provided by a VPC. The VPC can also be used to configure the following: 

  • Virtual Private Networks or VPNs
  • Direct connectivity between VPCs or VPC peering
  • Gateways
  • Mirror sessions

Now, when you are well versed with the basics of Amazon VPC, let’s have a look at what you can do with a VPC.

HKR Trainings Logo

Subscribe to our YouTube channel to get new updates..!

What can you do with a VPC?

  • Instances can be launched in a subnet that you choose. 
  • Custom IP address ranges can be assigned in each subnet
  • Route Tables can be configured between subnets.
  • An internet gateway can be created and attached to your VPC. 
  • You get excellent security over your AWS resources.
  • Security groups can be assigned to individual instances.

Conclusion 
By now you would be well versed with everything you need to begin with Amazon Virtual Cloud. In the beginning, we learnt the basics of Amazon VPC and continued to learn its architecture. While at the architecture of VPC, we saw different parts of it and saw each of them briefly. 

Once you knew all the architectural parts, you saw the elements of VPC and studied them in brief. Finally, after learning about different elements and several other basics of Amazon Virtual Cloud, we saw the applicability of the same.

AWS Training

Weekday / Weekend Batches

 Related Articles:



Source link

Leave a Reply

Subscribe to Our Newsletter

Get our latest articles delivered straight to your inbox. No spam, we promise.

Recent Reviews


What are the controllers and their types?

Salesforce controllers, also known as Visualforce controllers, are used to execute a set of instructions. Controllers specify what happens when a user interacts with the Visualforce Markup components such as Visualforce tags, HTML, fields, etc. When a user clicks on a button or link on a Visualforce page, the associated controllers will display the data related to the user action or component. The controllers have the ability to modify component behavior. They work on an MVC(Model-View-Controller) approach. Salesforce provides the below types of controllers.

  • Standard controllers
  • Standard List Controllers 
  • Custom Controllers

Wish to make a career in the world of salesforce? Start with HKR’S  salesforce online training !

1.Standard controllers

The standard controllers are the default controllers provided by Salesforce. They contain the same logic and functionality that are used for standard Salesforce pages. Every Salesforce object contains a standard controller that can be queried using the Salesforce Lightning Platform API. When a user interacts with a component on the page, the controller interacts with the database, fetches the relevant data, and displays it on the page. To display the relevant data on the Visualforce page, we need a record ID. So, we need to send an ID as a query string parameter in the page URL. The standard controller has a getter method that returns the record related to the query ID. If a user doesn’t have access to a certain object (or component) on the page, which is associated with a standard controller, it will display an insufficient privileges error message to the user. 

Associating a standard controller with a Visualforce page

To associate a standard controller to a Visualforce page, we have to use the “standardController” attribute on the tag. We should specify the name of any Salesforce object, which can be queried using the Lightning Platform API. Here is the syntax to associate a standard controller to a standard object on a page,

Salesforce Training

  • Master Your Craft
  • Lifetime LMS & Faculty Access
  • 24/7 online expert support
  • Real-world & Project Based Learning

2.Standard List Controllers

Standard list controllers are used for displaying or act on a set of records on the Visualforce pages. Related lists, list pages, and mass action pages are some of the examples of Salesforce pages that work with a set of records. The following are the objects that can be used with standard list controllers.

  • Account
  • Contract
  • Idea
  • Order
  • Product2
  • Solution
  • User
  • Lead
  • Opportunity
  • Asset
  • Campaign
  • Case
  • Contact
  • Custom objects

Associating a standard list controller with a Visualforce page

Associating a standard list controller is very much similar to associating a standard controller. In the standard list controller, we can set an object through the “standardController” attribute on the tag and then set the recordSetVar attribute on the same component. Here is the syntax to associate a standard list controller with an object on a page,

Once the standard list controller is associated, we can act on a set of records using expression language syntax. We can use a standard list controller to add pagination to a page with the help of the next and previous actions.

Cloud Technologies, salesforce-controllers-description-0, Cloud Technologies, salesforce-controllers-description-1

Subscribe to our YouTube channel to get new updates..!

3.Custom Controllers

Custom controllers are used to implementing custom logic and data manipulation for a Visualforce page. If we want to perform things like calling an external web service, validate and insert data, we can use a custom controller. The custom controllers override the existing functionality and implement customized navigation through an application. They execute entirely in system mode and users will have full control over the app’s logic. 

Create a Visualforce page that uses a custom controller

To add a custom controller to a Visualforce page, we have to set the “controller” attribute in the tag. When we use a custom controller, we cannot use a standard controller. Here is the syntax to associate a custom controller to a Visualforce page,

Controller Extensions

A controller extension overrides behavior in a standard or custom controller. Any Apex class with a constructor that takes a single argument of type “ApexPages” is referred to as a controller extension. We can implement the functionality of another controller to an apex tag while adding custom logic. Here is an example class for controller extension.


public class myControllerExtension {

//custom code

}

We can extend this controller extension on a Visualforce page like below.
Both the controller extension and custom controller use the action, getter, and setter methods. The custom controllers and controller extension classes ignore user permissions and field-level security as they execute in system mode. So, the custom controllers and controller extensions are mainly used to set organization-wide defaults. Based on the user profile, we can even define whether a user can execute methods in a custom controller or controller extension class. 

Salesforce Training

Weekday / Weekend Batches

Conclusion

Apex is a complete programming language that we can use to implement effective Visualforce pages. We can use Apex properties, which are a combination of a variable with getter and setter methods. We can implement anything on a Visualforce page with the help of controllers in Apex code. Using controllers, we can implement features like dropdown on a Visual page. They allow you to filter the records displayed on the page. While working with controllers, you should have an eye out for validation rules. You should be able to handle the validation rule exceptions. 

Related Articles:



Source link