Wednesday 3 November 2021

Cloud (Docker, Container, Kubernetes)

 Container:

    A lightweight and portable executable image that contains software and all of its dependencies

Cluster:
   A set of machines, called nodes, that run containerized applications managed by Kubernetes

PoD:0

A point of delivery/point-of-deployment, or PoD, is "a module of network, compute, storage, and application components that work together to deliver networking services. The PoD is a repeatable design pattern, and its components maximize the modularity, scalability, and manageability of data centers." [1]


Docker:


Docker is a software technology providing operating-system-level virtualization also known as containers.

 
kubernetes(k8s):


K8s:K eightcharacters(ubernete) s:

The REST API is the fundamental fabric of Kubernetes. All operations and communications between components.To write applications using the Kubernetes REST API, you do not need to implement the API calls and request/response types yourself. You can use a client library for the programming language you are using.


https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/


"K3s": 

K8s is a general-purpose container orchestrator, while K3s is a purpose-built container orchestrator for running Kubernetes on bare-metal servers. Kubernetes uses kubelet, an agent running on each Kubernetes node to perform a control loop of the containers running on that node. This agent runs inside the container

Orchestrator:
 
HelmsMan:
 
HelmChart: 

Helm: This is steering or device used for ship/boat (
a tiller or wheel for steering a ship or boat).


Few Common Infra:

NATS and NATS Streaming:

KAFKA:

 

Cisco Contiv:



Kafka generally scales very well, so measuring the throughput of a single broker with a single producer and single consumer isn’t particularly meaningful. In reality, we’d be running a cluster with several brokers and partitioning our topics across them.
For as young as it is, NATS Streaming has solid performance (which shouldn’t come as much of a surprise considering the history of NATS itself), and I imagine it will only get better with time as the NATS team continues to optimize. In some ways, NATS Streaming bridges the gap between the commit log as made popular by Kafka and the conventional message queue as made popular by protocols like JMS, AMQP, STOMP, and the like.

https://blogs.cisco.com/cloud/why-contiv





Few Common DB:
Readb



REST API:

 

 

Docker vs. Virtual Machines

Docker is basically using the OS-level virtualization, Linux namespaces and control groups, for example. Its overhead is very thin compared to a virtualization technique, like Hypervisor used by virtual machines.

 

Docker is container based technology and containers are just user space of the operating system. At the low level, a container is just a set of processes that are isolated from the rest of the system, running from a distinct image that provides all files necessary to support the processes. It is built for running applications. In Docker, the containers running share the host OS kernel.

A Virtual Machine, on the other hand, is not based on container technology. They are made up of user space plus kernel space of an operating system. Under VMs, server hardware is virtualized. Each VM has Operating system (OS) & apps. It shares hardware resource from the host.

VMs & Docker – each comes with benefits and demerits. Under a VM environment, each workload needs a complete OS. But with a container environment, multiple workloads can run with 1 OS. The bigger the OS footprint, the more environment benefits from containers. With this, it brings further benefits like Reduced IT management resources, reduced size of snapshots, quicker spinning up apps, reduced & simplified security updates, less code to transfer, migrate and upload workloads.

 

Deep on Docker:

 

https://en.wikipedia.org/wiki/Docker_(software)

https://medium.com/@kasunmaduraeng/docker-namespace-and-cgroups-dece27c209c7

 

https://www.linux.com/news/understanding-and-securing-linux-namespaces/ 

https://en.wikipedia.org/wiki/Linux_namespaces

 

https://www.youtube.com/watch?v=fqMOX6JJhGo

 

Deep Kubernetes (K8s):

https://kubernetes.io/docs/concepts/overview/components/


DevOps:


https://searchitoperations.techtarget.com/definition/DevOps


Namespace:

https://www.toptal.com/linux/separation-anxiety-isolating-your-system-with-linux-namespaces

https://www.nginx.com/blog/what-are-namespaces-cgroups-how-do-they-work/

https://developers.redhat.com/blog/2018/10/22/introduction-to-linux-interfaces-for-virtual-networking#macvlan

 

 Docker Networking:


https://www.youtube.com/watch?v=j_UUnlVC2Ss

https://kodekloud.com/tutorials/

https://argus-sec.com/docker-networking-behind-the-scenes/ 

 

https://legacy.netdevconf.info/1.2/slides/oct7/01_ahern_microservice_net_vrf_on_host.pdf

https://people.kernel.org/dsahern/management-vrf-and-dns 

 

Linux VRF:


https://www.kernel.org/doc/html/latest/networking/vrf.html

https://www.ibm.com/docs/en/was-nd/9.0.5?topic=machines-aliasing-network-interface-card-loopback-device

 

https://wiki.linuxfoundation.org/networking/start 

 

Yaml basic:

 https://en.wikipedia.org/wiki/YAML

 

Json basic:

 

https://www.youtube.com/watch?v=nPciTVMIDU4

https://www.crio.do/blog/what-is-json/?utm_source=adwords&gclid=CjwKCAjwz5iMBhAEEiwAMEAwGJQBNKrkP_gpm1XHo2iBRrLzb5CUpy8f4q6CncSyiCqVVrRtILvauxoCDpEQAvD_BwE

 

asn.1 vs json reason and history

https://news.ycombinator.com/item?id=8871604 


Cloud Vs Cloud-Native


 
VPP
 

2 comments:

  1. https://www.toptal.com/linux/separation-anxiety-isolating-your-system-with-linux-namespaces

    ReplyDelete
    Replies
    1. https://man7.org/linux/man-pages/man7/network_namespaces.7.html

      Delete