Posts

[Service Mesh] Istio vs Envoy

Image
Each Microservice that constitutes the Microservice architecture identifies each service for communication between Microservices, identifies routes, performs load balancing, and serves as a circuit break for the entire service. It is Service Mesh that integrates these functions into a single layer. Istio is an open-source solution for implementing Service Mesh (Service Mesh) developed by IBM, Redhat, VMware, and Google. Istio distributes Envoy, a proxy that can communicate all networks between microservices, to microservices in a sidecar pattern, stores and manages/supervises the settings of proxies and serves as a controller to deliver the settings to proxies. Istio Architecture Istio is divided into Data Plan and Control Plan , and each architecture is shown in the figure below. Mesh-Agnostic Code (istio/envoy) vs Mesh-Aware Code(Eureka) Architecture The two most commonly used methods of configuring Service Mesh, Mesh-Agnostic Code (istio/envoy) using Proxy as a Sidecar format, an...

Connectivity Between VPCs - Comparison of VPC Peering, VGW, DGW, and TGW

Image
VGW(Virtual Private Gateway): It's the oldest way, and it was first announced. DGW(Direct Connect Gateway): It was announced in 2017. TGW(Transit Gateway): It was released in 2018. *** VPC peering *** It provides a 1:1 connection between VPCs and establishes a private connection between VPCs in the same account or in different accounts. Using Private IP It is possible to connect not only within the same region but also within different regions. Does not support peering between VPCs if IP is reduplication Only one peering resource can be set up between two VPCs Does not support multiple peering relationships between VPCs Internet Gateway (IGW) or Virtual Private Gateway (VGW) is not required Provides high availability connectivity Maintain Traffic on a Global AWS Backbone Use Case: Provides 1:1 connection between VPCs Use Case: Business Expansion Case Using VPC Peering AWS Direct Connect & VGW(Virtual Private Gateway) A VGW is an endpoint that provides a connection with a VPC wh...

how to apply K8S HPA(Horizontal Pod Autoscaling)

Image
Outline  HPA refers to the replica expansion of the Pod inside the K8S node. The goal is to designate replication of deployed POD according to CPU usage so that the service can operate smoothly. (This is different from Instance Autoscaling, which increases instances of work nodes to be described later.) Apply sequence (based on AWS EKS) 1. Create a Kubernetes metrics server. Metrics Server aggregates resource usage data across the Kubernetes cluster. Metrics such as CPU and memory usage of a worker node or container are collected through 'kubelet' installed on each worker node. kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml If the installation is complete, please check the command below for proper installation kubectl get deployment metrics-server -n kube-system 2. Create a replica of the pod that you want to use HPA. Create one of the default values here. Please refer to deployment.yaml below deployment.yaml --- api...

What is IP Class, Subnet mask and CIDR?

Image
  IP Class IPv4 consists of a logical address system consisting of 255.255.255.255 32 bits (4 bytes) in length, and one IP consists of a Network Address and a Host Address. In particular, here, Network Address divides its scope into areas that are easy to manage, and we call it Class. This class consists of five classes from A to E as follows, and the Network Address area and Host Address area of each class are shown in the figure.  The starting range of each class is easy to remember by calculating the following equation. There are 256 ranges to input into IP (0 to 255) Divide by 2 from 256. 256 / 2 = 128 - 1 = 127 (range of A class: 0 ~ 127) 128 / 2 = 64 + 127 = 191 (range of B class: 128 ~ 191) 64 /2 = 32 + 191 = 223 (range of C class: 192 ~ 223) the rest of the number of 32 is divided by 16 and separated into a D class and an E class each.  Subnet Subnet Mask is used to raise or lower the Network Address value by masking the value to Network Address. In other words, t...

Robotic Studio project

  Robotic_Studio_project

setting of Kafka

Number of Partitions >= Number of Instance Transmission Warranty - Adjust to suit the Client's requirements At Most Once Retransmission X, Duplicate deletion X At Least Once: Retransmission O, Duplicate deletion X Exactly Once: Retransmission O, Duplicate deletion O Offset Commit: Adjust to suit the Client's requirements Auto Offset Commit Manual Offset Commit commitSync commitAsync Offset is managed by Consumer Group one message can be consumed to the same value in another Consumer group, but only once within the same Consumer Group. Producer processing method Synchronous Asynchronous server.properties unclean.leader.election.enable True: Expelled from the ISR, but automatically becomes the leader when it comes to life first. False: Waiting for the last leader to come to alive Enable connectivity only from internal clients listeners = PLAINTEXT://{private IP}:9092 advertised.listeners= PLAINTEXT://{private IP}:9092 Enable connectivity only from external clients listeners=PL...

User-Centred Design Project (UI/UX)

Image