일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- sessionManager
- nandtotetris
- 마운트
- mysql 엔진
- 어뎁티브 해시 인덱스
- S3 Interface Endpoint
- 온라인 ddl
- S3 private통신
- 안전하게 테이블 변경
- innodb 버퍼풀
- performance스키마
- Terraform
- x lock s lock
- innodb구조
- s3
- 밑바닥부터 구현하는 컴퓨팅 시스템
- BastianHost
- MySQL
- InnoDB
- 리눅스
- S3 Gateway Endpoint
- 필수 스크립트
- ix is lock
- 도커
- mysql 아키텍쳐
- s3 sync
- mysql 구조
- 운용 시 유용한 쿼리
- ec2
- SessionManager 터널링
- Today
- Total
목록분류 전체보기 (80)
이것이 점프 투 공작소
리눅스에서 환경변수 좀 수정했더니 발견한 에러 '/usr/bin:/bin'이 환경변수에 없다고 한다. /usr/bin 폴더는 리눅스의 실행파일이 모여있는 폴더다 echo $PATH 명령어로 환경변수들 확인해주고 진짜로 없던 export PATH=/usr/bin:/bin 로 환경변수 추가해주니 해결 그리고 에러난 김에 환경변수에 대해 정리해보자 리눅스의 환경변수 환경 변수는 크게 3가지로 나뉜다. 1. 로컬 환경 변수 현재 세션에서만 동작하는 환경변수다. 선언법 : 변수명='값' 환경변수를 삭제할 때는 unset 명령어를 사용해주면 된다. 2. 사용자 환경변수 터미널이나 원격 로그인 세션으로 접속 했을때 로드되는 환경 변수이다. 사용자의 home폴더에 존재하는 .bash_profile, .profile 또..
단순 라우팅 정책 (Simple Routing) 주로 단일 리소스(서버, 로드 밸런서 등)에 주로 사용되며, 동일 레코드 안에 여러 값(예: 다중 IP 주소)을 지정할 수 있습니다. 여러 IP를 지정한 경우 route53은 무작위로 그 값을 반환합니다. 가중치 기반 라우팅 정책 (Weighted) 가중치 기반 라우팅을 사용하면 다수의 리소스를 도메인과 연결하고 각 리소스로 라우팅되는 트래픽 비율을 선택할 수 있습니다. 리소스간의 성능이 다르거나, 실 데이터를 받아야하는 테스트용 리소스를 사용해야 될 때 적합합니다. 지리적 라우팅 정책 (Geolocation) 사용자의 위치(DNS 쿼리가 발생하는)를 기반으로 라우팅할 리소스를 지정할 수 있습니다. 각 위치마다 사용자들의 특성별로 서비스를 제공할 수 있어 ..
장고로 DB에 INSERT 시키는데 발생했던 에러.. MySQLdb._exceptions.OperationalError: (1366, "Incorrect string value: '\\xEC\\x83\\xB5\\xED\\x95\\x98...' for column '컬럼명' at row1 ) DB인코딩 문제로 발생한 에러이다 MySQL 컨테이너에 들어가서 status명령어로 확인해보니 characterset들이 모두 latin1으로 되어있었다. (MySQL 8버전 이하에서는 기본 인코딩이 latin1이라고 한다.) 컨테이너에 들어가 직접 명령어를 작성해도 괜찮지만 DockerFile파일에 추가해줬다 --skip-character-set-client-handshake 위 명령어는 뜻은 클라이언트의 문자셋을 ..
Multi AZ를 사용하면 RDS는 인스턴스를 자동으로 생성하고 다른 AZ에 있는 예비 인스턴스에 동기적으로 데이터를 복제합니다 Multi AZ를 사용하는 이유 인프라 장애가 발생하더라도 예비 인스턴스로 자동 장애 조치를 수행하여 장애 조치하고, 조치 후에도 DB 인스턴스의 엔드포인트는 그대로 유지되므로 관리자가 직접 개입할 필요 없이 애플리케이션에서 데이터베이스 작업을 재개할 수 있습니다. Replica Read-Replica (읽기전용) 원본 인스턴스를 복제하여 읽기전용 RDS를 생성 그 후 RDS가 인스턴스의 스냅샷을 생성하여 해당 스냅샷에서 읽기 전용 인스턴스를 생성합니다, 그러면 Amazon RDS가 기본 DB 인스턴스를 변경할 때마다 DB 엔진에 비동기식 복제 방법을 사용하여 읽기 전용 복제본..
SNI란? 하나의 로드 밸런서 리스너에서 각각 자체 TLS 인증서가 있는 다수의 보안 애플리케이션을 호스팅하도록 해주는 서비스 오직 ALB & NLB, CloudFront 에서만 동작함! 하나의 로드밸런서에 다중의 SSL을 가지고 각각 SSL에 해당하는 Target Group에 연결시켜줄 수 있음 CLB 하나의 SSL인증서 사용가능 다수의 인증서를 사용하려면 각각의 CLB가 존재해야함 ALB, NLB 다수의 SSL을 지원가능 SNI로 인증 가능
Connection Draining 기존 연결을 열린 상태로 유지하면서 Classic Load Balancer가 등록 취소 또는 비정상 인스턴스에 대한 요청 전송을 중지하도록 하려면 Connection Draining을 사용해라! Connection Draining은 ELB의 종류에 따라 명칭이 다릅니다 Connection Draining : CLB에서 부르는 이름 Deregistration Delay : ALB & NLB에서 부르는 이름 Connection Draining이 활성화하면 ELB가 인스턴스와 연결하는 최대 시간을 설정 할 수 있습니다. ( 1~3,600초 사이에서 설정가능 (기본값은 300초)) 즉, 헬스체크에 실패해도 인스턴스가 진행중인 요청에 대해서 시간을 주게됩니다. Connectio..
도커 설정파일, daemon.json을 건들다가 나타나버린 오류 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 찬찬히 읽어보면 unix:///var/run/docker.sock docker.sock의 도커 데몬에 연결 못하고있어 Is the docker daemon running? 도커데몬 돌아가고 있니? 도커데몬이란? dockerd is the persistent process that manages containers 컨테이너를 관리하는 도커의 백그라운드 프로세스이다. 도커데몬을 직접 실행하면 dockerd 를 입력하면 되고, 실행되면 로그 메세지가 계속 생성되며 백그라운드..
IAM이란? AWS의 리소스에 대한 접근을 관리 할 수 있게해주는 AWS사용자 및 그룹을 관리 하는 서비스 IAM은 크게 사용자(User)와 그룹(Group), 역할(Role)로 나뉘어집니다. AWS에 리소스에 대한 요청을 하게되면 aws-api를 내부적으로 사용합니다, 이 때 SigV4를 통해 헤더나 쿼리스트링 등 요청 데이터들은 암호화 됩니다. IAM사용자(User) 신규 생성된 사용자는 아무런 권한도 할당되지 않습니다. 따라서 IAM그룹에 추가하거나, IAM역할을 부여함으로서 권한 및 자격증명을 할당 할 수 있습니다. IAM 그룹(Group) IAM유저들의 집합입니다. 그룹을 활용하여 다수의 사용자에게 권한을 더 쉽게 부여 및 관리 할 수 있습니다. IAM 역할(Role) 롤도 정책들을 부여 받을 ..
문제 설명 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 명만 심사를 할 수 있습니다. 가장 앞에 서 있는 사람은 비어 있는 심사대로 가서 심사를 받을 수 있습니다. 하지만 더 빨리 끝나는 심사대가 있으면 기다렸다가 그곳으로 가서 심사를 받을 수도 있습니다. 모든 사람이 심사를 받는데 걸리는 시간을 최소로 하고 싶습니다. 입국심사를 기다리는 사람 수 n, 각 심사관이 한 명을 심사하는데 걸리는 시간이 담긴 배열 times가 매개변수로 주어질 때, 모든 사람이 심사를 받는데 걸리는 시간의 최솟값을 return 하도록 solution 함수를 작성해주세요. 제한 사항 입국심..
SSH(Secure SHell)란? 원격 시스템에 로그인하여 두 시스템간의 파일을 전송하고, 명령을 실행하도록 도와주는 응용 프로그램 또는 프로토콜 Public Network를 통해 통신할때 안전하게 통신하기 위해 사용됩니다. 모든 Unix 및 Linux 시스템에는 ssh명령이 포함되어있다. 왜 안전할까? Public Key(공개키, 메시지 전송 전 암호화) Private Key(개인키, 암호화된 메시지 복호화) SSH는 상기 두가지 키를 통해 메시지를 암호화 한다. - SSH Key 만들기 (리눅스 기준) $ ssh-keygen -t rsa # -t옵션으로 암호화 방식을 지정할 수 있다 key를 생성하면 저장위치, 비밀번호 등 추가 설정요소를 요구하는데 전부 엔터치면 기본생성 위치에 만들어진다. 파일위..