Amazon Web Service Flashcards

1
Q

What is Amazon EC2 Service?

A

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers. Amazon EC2’s simple web service interface allows you to obtain and configure capacity with minimal friction. It provides you with complete control of your computing resources and lets you run on Amazon’s proven computing environment. Amazon EC2 reduces the time required to obtain and boot new server instances to minutes, allowing you to quickly scale capacity, both up and down, as your computing requirements change. Amazon EC2 changes the economics of computing by allowing you to pay only for capacity that you actually use. Amazon EC2 provides developers the tools to build failure resilient applications and isolate them from common failure scenarios. “EC2 uses Xen virtualization. Each virtual machine, called an “instance”. You can use Amazon EC2 to launch as many or as couple of virtual servers as you need, design security and networking, and manage storage. Amazon EC2 empowers you to scale up or down to handle changes in requirements. “

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the relation between EC2 Instance and AMI?

A

“We can launch different types of instances from a single AMI. An instance type essentially determines the hardware of the host computer used for your instance. Each instance type offers different compute and memory capabilities. After we launch an instance, it looks like a traditional host, and we can interact with it as we would any computer. We have complete control of our instances; we can use sudo to run commands that require root privileges. “

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is Amazon Machine Image (AMI)?

A

An Amazon Machine Image (AMI) is a template that contains a software configuration (for example, an operating system, an application server, and applications). From an AMI, you launch an instance, which is a copy of the AMI running as a virtual server in the cloud. You can launch multiple instances of an AMI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Explain storage for Amazon EC2 instance.

A

“Amazon EC2 provides many data storage options for your instances. Each option has a unique combination of performance and durability. These storage can be used independently or in combination to suit your requirements. There are mainly four types of storage provided by AWS:

Amazon EBS
Amazon EC2 Instance Store
Amazon S3
Adding Storage”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is EBS?

A

EBS is durable, block-level storage volumes that you can attach to a running Amazon EC2 instance. The Amazon EBS volume persists independently from the running life of an Amazon EC2 instance. After an EBS volume is attached to an instance, you can use it like any other physical hard drive. Amazon EBS encryption feature supports encryption feature.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is Amazon EC2 Instance Store?

A

Storage disk that is attached to the host computer is referred to as instance store. Instance storage provides temporary block-level storage for Amazon EC2 instances. The data on an instance store volume persists only during the life of the associated Amazon EC2 instance; if you stop or terminate an instance, any data on instance store volumes is lost.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is Amazon S3 storage?

A

Amazon S3 provides access to reliable and inexpensive data storage infrastructure. It is designed to make web-scale computing easier by enabling you to store and retrieve any amount of data, at any time, from within Amazon EC2 or anywhere on the web.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is Route 53?

A

Amazon Route 53 is a highly available and scalable cloud Domain Name System (DNS) web service. It is designed to give developers and businesses an extremely reliable and cost effective way to route end users to Internet applications by translating names like www.example.com into the numeric IP addresses like 192.0.2.1 that computers use to connect to each other.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Amazon Elastic Load Balancing?

A

Elastic Load Balancing automatically distributes incoming application traffic across multiple Amazon EC2 instances in the cloud. It enables you to achieve greater levels of fault tolerance in your applications, seamlessly providing the required amount of load balancing capacity needed to distribute application traffic.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are regions and availability zones?

A

The AWS Cloud infrastructure is built around Regions and Availability Zones (“AZs”). A Region is a physical location in the world where we have multiple Availability Zones. Availability Zones consist of one or more discrete data centers, each with redundant power, networking and connectivity, housed in separate facilities. These Availability Zones offer you the ability to operate production applications and databases which are more highly available, fault tolerant and scalable than would be possible from a single data center. The AWS Cloud operates 32 Availability Zones within 12 geographic Regions around the world.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is a Key Pair? Explain how to create a key pair.

A

“Amazon EC2 uses public–key cryptography to encrypt and decrypt login information. Public–key cryptography uses a public key to encrypt a piece of data, such as a password, then the recipient uses the private key to decrypt the data. The public and private keys are known as a key pair. To log in to your instance, you must create a key pair, specify the name of the key pair when you launch the instance, and provide the private key when you connect to the instance. Linux instances have no password, and you use a key pair to log in using SSH. With Windows instances, you use a key pair to obtain the administrator password and then log in using RDP. You can create a key pair using the Amazon EC2 console or the command line. After you create a key pair, you can specify it when you launch your instance.”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a security group in Amazon EC2? What are the features of Security Group in Amazon EC2?

A

A security group acts as a virtual firewall that controls the traffic for one or more instances. When you launch an instance, you associate one or more security groups with the instance. You add rules to each security group that allow traffic to or from its associated instances. You can modify the rules for a security group at any time; the new rules are automatically applied to all instances that are associated with the security group. When we decide whether to allow traffic to reach an instance, we evaluate all the rules from all the security groups that are associated with the instance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How to connect to your Amazon EC2 instance?

A

You can connect to a Linux EC2 instance using SSH or Putty. You must specify a key pair and ensure SSH traffic is enabled on the instance. You can connect to a Windows instance using Microsoft Remote Desktop app. Be sure to enable inbound RDP traffic from your IP address to your instance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How are you charged in Amazon EC2?

A

The AWS cloud computing model allows you to pay for services on-demand and to use as much or as little at any given time as you need. While resources are active under your account, you pay for the cost of allocating those resources and for any incidental usage associated with those resources, such as data transfer or allocated storage. To keep your costs as low as possible, you should release or terminate unused resources as soon as you are done with them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Can I vertically scale an Amazon EC2 instance? How?

A

Yes. This is an incredible feature of AWS and cloud virtualization. Spinup a new larger instance than the one you are currently running. Pause that instance and detach the root EBS volume from this server and discard. Then stop your live instance, detach its root volume. Note the unique device ID and attach that root volume to your new server. And the start it again.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is auto-scaling? How does it work?

A

Autoscaling is a feature of AWS which allows you to configure and automatically provision and spinup new instances without the need for your intervention. You do this by setting thresholds and metrics to monitor. When those thresholds are crossed a new instance of your choosing will be spun up, configured, and rolled into the load balancer pool. You can scaled horizontally without any operator intervention.

17
Q

What automation tools can I use to spinup servers?

A

The most obvious way is to roll-your-own scripts, and use the AWS API tools. Such scripts could be written in bash, perl or other language or your choice. Next option is to use a configuration management and provisioning tool like puppet or better it’s successor Opscode Chef. You might also look towards a tool like Scalr. Lastly you can go with a managed solution such as Rightscale.

18
Q

What is configuration management? Why would I want to use it with cloud provisioning of resources?

A

“Configuration management has been around for a long time in web operations and systems administration. Yet the cultural popularity of it has been limited. Most systems administrators configure machines as software was developed before version control - that is manually making changes on servers. Each server can then and usually is slightly different. Troubleshooting though is straightforward as you login to the box and operate on it directly. Configuration management brings a large automation tool into the picture, managing servers like strings of a puppet. This forces standardization, best practices, and reproducibility as all configs are versioned and managed. It also introduces a new way of working which is the biggest hurdle to its adoption. Enter the cloud, and configuration management becomes even more critical. That’s because virtual servers such as Amazons EC2 instances are much less reliable than physical ones. You absolutely need a mechanism to rebuild them as-is at any moment. This pushes best practices like automation, reproducibility and disaster recovery into center stage. “

19
Q

Explain how you would simulate perimeter security using Amazon Web Services model.

A

Traditional perimeter security that we’re already familiar with using firewalls and so forth is not supported in the Amazon EC2 world. AWS supports security groups. One can create a security group for a jump box with SSH access - only port 22 open. From there a webserver group and database group are created. The webserver group allows 80 and 443 from the world, but port 22 only from the jump box group. Further the database group allows port 3306 from the webserver group and port 22 from the jump box group. Add any machines to the webserver group and they can all hit the database. No one from the world can, and no one can directly SSH to any of your boxes. For further restriction, only allow SSH access from specific IP addresses on your network, or allow just your subnet.

20
Q

Explain Stopping, Starting, and Terminating an Amazon EC2 instance.

A

“Stopping and Starting an instance: When an instance is stopped, the instance performs a normal shutdown and then transitions to a stopped state. All of its Amazon EBS volumes remain attached, and you can start the instance again at a later time. You are not charged for additional instance hours while the instance is in a stopped state. Terminating an instance: When an instance is terminated, the instance performs a normal shutdown, then the attached Amazon EBS volumes are deleted unless the volume’s deleteOnTermination attribute is set to false. The instance itself is also deleted, and you can’t start the instance again at a later time. “

21
Q

How does cloud computing provides on-demand functionality?

A

“Cloud computing is a metaphor used for internet. It provides on-demand access to virtualized IT resources that can be shared by others or subscribed by you. It provides an easy way to provide configurable resources by taking it from a shared pool. The pool consists of networks, servers, storage, applications and services. Resources are partitioned on-demand in a multi-tenancy architecture. “

22
Q

What is the difference between scalability and elasticity?

A

Scalability is the ability of the system to accommodate larger loads just by adding resources either making hardware stronger (scale up) or adding additional nodes (scale out). Elasticity is the ability to fit the resources needed to cope with loads dynamically usually in relation to scale out. So that when the load increases you scale by adding more resources and when demand wanes you shrink back and remove unneeded resources. Elasticity is mostly important in Cloud environments where you pay-per-use and don’t want to pay for resources you do not currently need on the one hand, and want to meet rising demand when needed on the other hand. “Scalability is a characteristic of cloud computing through which increasing workload can be handled by increasing in proportion the amount of resource capacity. It allows the architecture to provide on demand resources if the requirement is being raised by the traffic. Whereas, elasticity is being one of the characteristic provide the concept of commissioning and decommissioning of large amount of resource capacity dynamically. It is measured by the speed by which the resources are coming on demand and the usage of the resources. “

23
Q

What are the different layers of cloud computing?

A

Infrastructure as a Service (IAAS) providers offer low level abstractions of physical devices. Amazon’s Web Services are a prime example of IaaS[2]. EC2 instances are compute resources, analogous to a server in a datacenter. S3 buckets are storage resources analogous to an array of harddrives. VPCs are network resources analogous to switches and routers. These low level abstractions allow you to construct and manage a deployment at the hardware granularity. Managing infrastructure, even virtual infrastructure, can be very time consuming - if you’re running an application that doesn’t require a very specialized environment it shouldn’t be necessary. Platform as a Service (PaaS) providers offer a managed environment such as Rails or Django in which to run your application rather than virtualized hardware. This way, developers can focus on developing an application and the PaaS provider manages the details of deployment and scaling. Google’s App Engine is an example of PaaS[3]. Finally, Software as a Service (SaaS) providers offer an actual application to end users. Github is a great example of SaaS[4]. They provide a version control service while all the underlying details of how the application is managed are hidden behind a user interface and API. “Cloud computing consists of 3 layers in the hierarchy: IaaS, PaaS, SaaS. Infrastructure as a Service (IaaS) provides cloud infrastructure in terms of hardware like memory, processor speed etc. Platform as a Service (PaaS) provides cloud application platform for the developers. Software as a Service (SaaS) provides cloud applications which are used by the user directly without installing anything on the system. The application remains on the cloud and it can be saved and edited in there only. “

24
Q

How to secure your data for transport in cloud?

A

How to secure your data for transport in cloud?”Cloud computing provides very good and easy to use feature to an organization, but at the same time it brings lots of question that how secure is the data, which has to be transported from one place to another in cloud. So, to make sure it remains secure when it moves from point A to point B in cloud, check that there is no data leak with the encryption key implemented with the data you’re sending. “

25
Q

How do you use Amazon SQS?

A

“Amazon Simple Queue Service (SQS) is a fast, reliable, scalable, fully managed message queuing service. SQS makes it simple and cost-effective to decouple the components of a cloud application. You can use SQS to transmit any volume of data, at any level of throughput, without losing messages or requiring other services to be always available. With SQS, you can offload the administrative burden of operating and scaling a highly available messaging cluster, while paying a low price for only what you use. “

26
Q

What are the Security Best Practices for Amazon EC2?

A

“There are several best practices for secure Amazon EC2: Use AWS Identity and Access Management (IAM) to control access to your AWS resources. Restrict access by only allowing trusted hosts or networks to access ports on your instance. Review the rules in your security groups regularly, and ensure that you apply the principle of least Privilege — only open up permissions that you require. Disable password-based logins for instances launched from your AMI. Passwords can be found or cracked, and are a security risk. “

27
Q

What is configuration management? Why would I want to use it with cloud provisioning of resources?

A

“Configuration management has been around for a long time in web operations and systems administration. Yet the cultural popularity of it has been limited. Most systems administrators configure machines as software was developed before version control - that is manually making changes on servers. Each server can then and usually is slightly different. Troubleshooting though is straightforward as you login to the box and operate on it directly. Configuration management brings a large automation tool into the picture, managing servers like strings of a puppet. This forces standardization, best practices, and reproducibility as all configs are versioned and managed. It also introduces a new way of working which is the biggest hurdle to its adoption. Enter the cloud, and configuration management becomes even more critical. That’s because virtual servers such as Amazons EC2 instances are much less reliable than physical ones. You absolutely need a mechanism to rebuild them as-is at any moment. This pushes best practices like automation, reproducibility and disaster recovery into center stage. “

28
Q

What is cloud computing?

A

Cloud computing provides a simple way to access servers, storage, databases and a broad set of application services over the Internet. A Cloud services platform such as Amazon Web Services owns and maintains the network-connected hardware required for these application services, while you provision and use what you need via a web application.

29
Q

What are server farms?

A

A server farm or server cluster is a collection of computer servers - usually maintained by an organization to supply server functionality far beyond the capability of a single machine. Server farms often consist of thousands of computers which require a large amount of power to run and to keep cool.

30
Q

What is auto scaling?

A

Auto Scaling enables you to follow the demand curve for your applications closely, reducing the need to manually provision Amazon EC2 capacity in advance. For example, you can set a condition to add new Amazon EC2 instances in increments to the Auto Scaling group when the average utilization of your Amazon EC2 fleet is high; and similarly, you can set a condition to remove instances in the same increments when CPU utilization is low. If you have predictable load changes, you can set a schedule through Auto Scaling to plan your scaling activities. You can use Amazon CloudWatch to send alarms to trigger scaling activities and Elastic Load Balancing to help distribute traffic to your instances within Auto Scaling groups. Auto Scaling enables you to run your Amazon EC2 fleet at optimal utilization.

31
Q

What is VPC?

A

Amazon Virtual Private Cloud (VPC) is a commercial cloud computing service that provides users a virtual private cloud, by “provision[ing] a logically isolated section of Amazon Web Services (AWS) Cloud”. Enterprise customers are able to access the Amazon Elastic Compute Cloud (EC2) over an IPsec based virtual private network. Unlike traditional EC2 instances which are allocated internal and external IP numbers by Amazon, the customer can assign IP numbers of their choosing from one or more subnets. By giving the user the option of selecting which AWS resources are public facing and which are not, VPC provides much more granular control over security. For Amazon it is “an endorsement of the hybrid approach, but it’s also meant to combat the growing interest in private clouds”.

32
Q

What is Amazon IAM?

A

You can use AWS IAM to securely control individual and group access to your AWS resources. You can create and manage user identities (“IAM users”) and grant permissions for those IAM users to access your resources. You can also grant permissions for users outside of AWS (federated users).