Application Deployment and Security Flashcards

1
Q

Describe Deployment Environment

A

The development environment is where you do your coding, and in most cases it bears only a passing resemblance to the final environment — typically just enough for you to deal with fundamental aspects of your infrastructure, such as containers or cloud networking. You’ll likely use an IDE or other tool to make deployment easier.

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

Describe testing environment

A

An environment for testing the code with mock resources

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

Describe Staging environment

A

The stage where it should resemble the production environment

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

Describe Production environment

A

where end users interact with it. At this point it’s been tested multiple times, and should be error free. The production environment itself must be sized and constructed to handle expected traffic, including surges that might come seasonally or with a particular event.

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

Describe the Bare metal deployment model

A

Installing software directly onto the target computer

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

Describe the Virtual Machine Deployment model

A

Virtual computers within your computer where the host is the physical computer

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

Describe what a hypervisor is

A

software that creates and manages VMS

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

Describe container based infrastructure

A

a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another

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

Describe Serverless Computing deployment model

A

a cloud computing execution model in which the cloud provider allocates machine resources on demand, taking care of the servers on behalf of their customers

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

Describe On-premise infrastructure

A

any system thats literally within the confines of your building

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

Describe Private cloud

A

a system that provides self-service provisioning for compute resources, networking, and storage.

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

What does the cloud provide

A

self-service access to computing resources, such as virtual machines, containers, and even bare metal, which means that users can log into a dashboard or use the command line to spin up new resources themselves, rather than waiting for IT to resolve a ticket

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

What is the cloud referred to as

A

IaaS

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

Describe a Public Cloud

A

Cloud Infrastructure that is managed by a public cloud provider

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

Describe hybrid cloud

A

is the combination of two different types of clouds. Typically, hybrid cloud is used to bridge private cloud and public cloud within a single application.

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

What are some advantages of hybrid cloud

A

You can use the private aspect for security and the public for more resources

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

Describe edge cloud

A

the computational processing of sensor data away from the centralized nodes and close to the logical edge of the network, toward individual sources of data.

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

What is Docker

A

a format that wraps a number of different technologies to create what we know today as containers.

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

What is a namespace in Docker

A

isolate different parts of the running container. For example, the process itself is isolated in the pid (process ID) namespace, the filesystem is isolated in the mnt (mount) namespace, and networking is isolated in the net namespace.

20
Q

What is a control group in Docker

A

cgroups, are a standard linux concept that enables the system to limit the resources, such as RAM or storage, used by an application.

21
Q

What is a Union File System in Docker

A

UnionFS, are file systems that are built layer by layer, combining resources.

22
Q

What are the steps for creating a container

A

Either create a new image using docker build or pull a copy of an existing image from a registry using docker pull. (Depending on the circumstances, this step is optional. See step 3.)
Run a container based on the image using docker run or docker container create.
The Docker daemon checks to see if it has a local copy of the image. If it does not, it pulls the image from the registry.
The Docker daemon creates a container based on the image and, if docker run was used, logs into it and executes the requested command.

23
Q

In order to create a container-based deployment what do you need

A

Dockerfile

24
Q

What is a Docker file

A

a text document that contains all the commands a user could call on the command line to assemble an image

25
Q

Describe Continous integration

A

continually merge your changes with the main branch of the existing application so that any given change set is small and the potential for problems is low

26
Q

Describe Continuous Delivery

A

the process of performing development in sprints that are short enough that the code is always in a deployable state.

27
Q

Describe rolling upgrade

A

changes are periodically rolled out in such a way that they don’t impact current users; nobody should have to “reinstall” the software.

28
Q

Describe Canary pipeline

A

the new version is rolled out to a subset of users (or servers, depending on the architecture). If these users experience problems, the changes can be easily rolled back. If these users don’t experience problems, the changes are rolled out to the rest of production.

29
Q

Describe Blue-green deployment

A

an entirely new environment is created with the new code on it, but the old environment is held in reserve. If users on the new environment experience problems, traffic can be diverted back to the original environment. If there are no problems within a specific amount of time, the new environment becomes the production environment and the old one is retired to be used for the next change.

30
Q

Describe a Load balancer

A

it takes requests and “balances” them by spreading them out among multiple servers. For example, if you have 10 servers hosting your web application, requests will come first to the load balancer, which will then parcel them out among those 10 hosts.

31
Q

Describe Persistent sessions

A

a process in which a load balancer creates an affinity between a client and a specific network server for the duration of a session,

32
Q

Describe Round robin Load balancing

A

the server simply sends each request to the “next” server on the list.

33
Q

Describe Least connection Load balancing

A

Sends requests to the server that is the least busy

34
Q

Describe IP hash

A

The load balancer makes a decision based on a hash

35
Q

Describe the Blue-green deployment

A

Sends traffic to the blue environment if it is busy sends it to the green evironment

36
Q

Describe canary deployment

A

starts by diverting a small fraction of your traffic to the blue environment. A load balancer can then increase the amount of traffic diverted to the blue environment until either issues are detected and traffic goes back to the old environment or all servers and users are on the new environment, and the old one is retired or used for the next push.

37
Q

What is a Reverse Proxy

A

make sure responses look like they all come from the same server

38
Q

What is data at rest

A

data being stored

39
Q

what is data in flight or in motion

A

data being transferred from one server to another

40
Q

Describe Two-way encryption

A

encrypt the data using a key, and then you can use that key (or a variation on it) to decrypt the data to get it back in “clear text.” You would use this for information you would need to access in its original form, such as medical records or social security numbers.

41
Q

Describe One way encryption

A

an encrypted value without necessarily using a specific key, but you can’t unencrypt it. You would use that for information you don’t need to retrieve, just need to compare, such as passwords. For example, let’s say you have a user, bob, who has a password of munich. You could store the data as:

42
Q

What is TLS (Transport Layer Security)

A

provides message authentication and stronger ciphers than its predecessor. Whenever possible you should be using TLS.

43
Q

What is SQL injection

A

used to attack data-driven applications, in which malicious SQL statements are inserted into an entry field for execution

44
Q

What does SQL injection allow someone to do

A

allow attackers to spoof identity, tamper with existing data, cause repudiation issues such as voiding transactions or changing balances, allow the complete disclosure of all data on the system, destroy the data or make it otherwise unavailable, and become administrators of the database server.

45
Q

What are SQLmap and SQLninja an example of

A

Detection engines