Containerization Flashcards
(19 cards)
What is a Container?
A lightweight, standalone, and executable software package that includes everything needed to run a piece of software
What is an Image?
Container images are lightweight, standalone packages that include all the necessary elements for running software, such as code, dependencies, and system tools. They provide a portable and consistent environment, enabling applications to run reliably across various computing environments.
What is a tag?
Attached at build time, used for versioning mostly
What is “exposing a port” what things are needed?
Need to listen for traffic within the container
Need to forward traffic to a pod through the container
-p host-port:container-port
What is a project?
Logical unit used to organize and isolate resources and applications within a container orchestration environment.
What is a Pod?
A single instance of a running process. Shared network namespace, shared storage volumes.
oc create <spec>
oc delete pod <pod-name></pod-name></spec>
What is a DeploymentConfig?
A template for a pod. An object that defines a desired state of a deployment and allows for declarative updates to applications
oc new-app <image> –name <name> –as-deployment-config
oc delete all -l <label></label></name></image>
What is the ReplicaController? What does it work with?
When a new update is made to the deployment config, a new replication controller is made and the old one is deleted
Actually runs the pods
What is a Service?
- Borrowed from Kubernetes
- Internal IP / DNA to expose a set of Pods
- Used for intercommunication between different components of an application within a cluster
- Load Balancing: automatically distribute incoming network traffic across the pods that match the service
oc expose –port <port> pods/<pod></pod></port>
What is a Route?
Expose a service to the external open internet
Provides a publicly accessible URL
oc expose service/<service></service>
What is a ConfigMap?
Borrowed from Kubernetes
Holds config data for pods to consume
“Consuming” configmap means using the data within the configmap
Not for sensitive data
oc set env dc/<deploymentConfig> -from cm/<configMap></configMap></deploymentConfig>
What are secrets?
Openshift type
For private information
What is an ImageStream?
Blueprint for a container
Correspond to names
Collection of related container images
What is an ImageStreamTag?
Specific pointer or reference to a tagged image within an image stream
DeploymentConfigs can “subscribe” to an image stream tag
oc tag <original> <destination></destination></original>
What are Builds?
Taking the source code of an application and creating an image from it
What is a BuildConfig? What are Webhooks? What are Build Hooks?
oc new-build <source></source>
Webhooks
Endpoints triggered when devs push code, openshift starts build when called
Build Hooks
Do something after a build completes
What is S2I?
Dockerfile not needed to produce an image
Create an image directly from source code using “builder images”
What is HPA (Horizontal Pod Autoscaler)? What information is used?
Add replicas to a deployment config
oc scale dc/<deployment> –replicas=3</deployment>
Number of Pods
Current Resource Usage
Desired Resource Usage
oc autoscale dc/<deployment
config> –min 1 –max 1- –cpu-percent=80
What are Templates?
Pre-configured set of openshift objects that can be used to create multiple instances of applications or services
Define and parameterize a group of resources
Includes services, routes, deployment configs, route, imageStream