일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 밑바닥부터 구현하는 컴퓨팅 시스템
- s3
- S3 private통신
- mysql 엔진
- 안전하게 테이블 변경
- S3 Gateway Endpoint
- sessionManager
- innodb구조
- 필수 스크립트
- x lock s lock
- 도커
- performance스키마
- ix is lock
- S3 Interface Endpoint
- s3 sync
- BastianHost
- SessionManager 터널링
- mysql 구조
- 리눅스
- mysql 아키텍쳐
- innodb 버퍼풀
- 어뎁티브 해시 인덱스
- 운용 시 유용한 쿼리
- ec2
- InnoDB
- MySQL
- Terraform
- 마운트
- nandtotetris
- 온라인 ddl
- Today
- Total
목록전체 글 (80)
이것이 점프 투 공작소
1. 동시성(Concurrency)과 병렬성(Parallelism)동시성과 병렬성은 cpu의 작업 처리방식입니다. 동시성은 싱글코어 프로세서에서 멀티 스레드 환경을 구성하여 프로그램이 '동시에 실행되는 것 처럼'(논리적) 보이게 하는 방법이고,병렬성은 멀티코어 프로세서에서 여러개의 스레드, 프로세스를 병렬로 돌려 프로그램을 '실제로 동시에 실행'(물리적) 시키는 방법입니다. 동시성으로 작업하는걸 멀티 태스킹, 병렬성으로 작업하는걸 멀티 프로세싱이라고도 합니다. 위에서 동시성은 싱글코어, 벙렬성은 멀티코어에서 사용되는 것 처럼 이야기 했지만,실제로 운영체제는 두 방법 중 하나를 선택하여 사용하는것이 아닌 섞어서 사용합니다.예를들어 6코어 12쓰레드의 프로세서가 있다면 6개의 프로세스를 병렬로 실행함과 동시..
다른 AWS 계정에서 사용하는 S3 데이터를 옮겨야하는 상황이 발생했습니다. 약 5개 정도의 S3를 옮기면 되어서, 간단하게 AWS CLI를 통해 데이터를 옮기는게 좋다는 생각이 들었습니다. AWS CLI S3 API를 활용한 데이터 이전 흐름도 오른쪽 : 계정 A (목적지 버킷) 왼쪽 : 계정 B (소스 버킷) 1. 계정 A에서 S3에 대한 정책 생성 계정A에서 목적지 버킷에 대한 GET,PUT,LIST 권한, 소스버킷에 대한 LIST, GET 권한이 존재하는 정책을 생성 후 계정 A의 사용자에게 부여합니다. s3-migration-policy라는 정책을 생성 아래 JSON을 이용해 생성하였습니다. 아래 JSON은 해당 S3 정책에 대한 예시입니다. { "Version": "2012-10-17", "S..
일반적으로 DB는 Private Subnet 즉 인터넷 엑세스가 불가능한 서브넷에 생성합니다. 하지만 로컬에서 Private Subnet에 있는 DB에 대한 엑세스가 필요하기에 Session Manager와 Bastian Host 이용하여 DB에 접속하는 방법을 정리하려 합니다. EC2 Session Manager 연결 1. EC2 UserData에 스크립트 추가 Bastian Host UserData에 Session Manager 설치 스크립트를 추가합니다. #!/bin/bash yum update -y yun install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm y..
S3는 기본적으로 Public리소스라서 Private하게 접근하려면 VPC엔드포인트를 이용하여 접근해야합니다. Gateway Endpoint, Interface Endpoint 2가지 방법으로 Private하게 접속 할 수 있습니다. Interface Endpoint 와 Gateway Endpoint 2가지 방법으로 S3와 private한 연결을 만들 수 있습니다. 두 Endpoint모두 S3와 Private하게 통신을 할 수 있는 방식이지만 몇가지 차이점이 있습니다. 대표적으로는 Interface Endpoint는 On-Prem등 외부 접속을 허용하고, Gateway Endpoint는 허용하지 않는 차이점이 있습니다. Interface Endpoint란? 예전에는 S3에 private하게 접속하려면 G..
S3 안의 데이터에 대한 백업이나 동기화가 필요한 순간이 있습니다 그럴때 S3 Replication과 S3 Batch 작업을 통해 구현 가능합니다. 즉 S3 Batch와 S3 Replication 을 이용하면 S3에 대한 복제와 지속적인 동기화가 가능합니다. AWS S3 복제 (Replication) 란? S3 복제를 사용하면 CRP (교차 리전 복제) 와 SRR (동일 리전 복제) 두가지 방법으로 S3 데이터를 복제 할 수 있습니다. 다른 계정간 S3 복제 또한 가능합니다. 데이터의 백업을 생성하거나, 더 효율적인 S3 스토리지 클래스를 사용하는 등 다양한 목적을 위해 사용됩니다. S3 Replication 생성 S3 복제를 하기 위해선 원본 버킷에 복제 규칙을 생성해야합니다. S3 -> 관리 -> 복..
DNS Zone이란? DNS Zone은 도메인 네임스페이스라고도 합니다. DNS는 트리구조로 되어있는데 최상위에 root 도메인, TLD(Top Level Domain), 서브 도메인으로 이루어져있습니다. 각 도메인 영역마다 별도의 Zone을 만들어서 관리 할 수 있습니다. 예를 들어 TLD인 google.com, 서브도메인 a.google.com , b.google.com 마다 각각의 Zone을 가질 수 있습니다. 영역에 대한 모든 정보는 DNS 영역 파일이라는 이름으로 저장됩니다. 네임서버와 DNS 레코드란? 사용자가 도메인을 질의하거나, 도메인을 통해 통신할때, 도메인의 네임서버에 질의를 하여 설정된 값을 찾아 통신을 하게 합니다. 이때, 네임서버에 설정된 값들을 DNS레코드라고 합니다. 각 DNS..
업무중 AWS VPC와 On-Prem사이 DX를 통해 전용선 연결이 필요하게 되었습니다. DX를 연결하며 진행하였던 방법을 공유하려합니다. Direct Connect (DX)란? on-prem의 리소스와 AWS 내의 VPC를 전용선으로 연결하기 위한 AWS의 서비스입니다. 전용선으로 연결하기에 인터넷을 통한 연결보다 안전하게 통신 할 수 있습니다. AS와 ASN AWS DX를 이해하기 위해서는 AS와 ASN, BGP프로토콜을 알아야합니다. AS (Antonomous System) Antonomous System의 약자로 인터넷에서 라우팅을 관리하고 제어하는 단위이며, 네트워크의 도메인입니다. ISP, 기업의 on-prem 네트워크, 클라우드 제공자 (AWS,GCP)등이 AS를 가집니다. 각 AS는 ASN..
업무 중 application.yml에 붙어있던 prefix를 특정 api에서는 제거해야하는 상황이 생겼습니다. 그래서 서블릿을 사용해야 할 것 같아, prefix를 제거하고 새로 서블릿을 만들어 라우팅을 하여 해결하였지만 이해가 부족한 것 같아 서블릿에 대하여 다시 공부하고 정리하려합니다서블릿이란?웹 어플리케이션에서 HTTP 요청과 응답 처리를 위한 스프링에서 제공하는 핵심 기능입니다. 스프링 부트에서는 HttpServlet클래스를 상속을 받아 사용하며, Servlet Container에 의해 실행됩니다. doGet, doPost, doPut, doDelete 등의 메서드를 사용하여 요청을 처리하며 스프링 부트에서는 어노테이션과 HttpServlet 상속을 이용하여 간단하게 생성 할 수 있습니다. 아래..
Node와 Pod의 네트워크를 분리해야하는 이유 두 네트워크를 분리함으로서 보안 및 정책을 엄격하게 관리 할 수 있고 네트워크별 고유한 정책을 적용할 수 있습니다. 예를들어, 특정 노드에서 실행중인 pod가 다른 node의 pod에 직접 통신 할 수 없도록 설정가능합니다. IP관리 또한 용의하며, 새로운 노드가 추가되면 해당 노드에 대한 네트워크 구성을 자동으로 처리 할 수 있습니다. Amazon VPC CNI의 사용자 지정 네트워킹 기능을 사용하면 포드에서 사용할 Amazon VPC 클러스터의 특정 서브넷을 정의할 수 있습니다. VPC 구성 vpc에 cidr을 추가하여 10.0.x.x/16은 노드 네트워크, 100.64.x.x/16은 파드 네트워크로 구성하려합니다. 기존의 EC2 노드가 있는 서브넷 (..
프로메테우스의 집계 연산자 프로메테우스의 promQL은 총 11개의 집계연산자와 2개의 선택적 구문 without, by를 제공합니다. without 특정 값을 제외한 메트릭을 선택하는데 사용 할 수 있습니다. metric_name이나 label_name을 사용하여 메트릭을 선택합니다. by 메트릭을 그룹화하는 데 사용됩니다. by 구문은 label_name을 사용하여 메트릭을 그룹화합니다. 표현식 by (레이블) 명령어를 통해 그룹화를 진행 할 수 있습니다. 동일한 집계에 by와 without을 동시에 사용 할 수 없습니다. expression by (label_name1, label_name2, ...) sum 가장 많이 사용되는 연산자 중 하나이며, 메트릭의 값을 합산하는데 사용됩니다. rate()..