728x90

Server Programming 55

Traefik 활용해보기

Traefik ? - Docker , K8S 등에 특화된 golang 기반의 reverse proxy 앱 - 설정을 raw text로 관리하는 것을 선호 - /volume1/docker 경로에 모든 파일을 저장한다고 가정, docker-compose로 설명 - lets encrypt 인증서를 입힐 수 있는 도메인이 필요 - 모든 연결이 https를 사용 - GUI가 아닌 쉘에서 진행 Traefik docker-compose로 올려보기 # 특정 docker-compose 문법을 사용하기 위해서는 3.x 이상이 필요합니다. version: '3.7' services: traefik: container_name: traefik image: traefik:latest restart: always # docker..

kvm docker-qemu

docker+kvm+novnc 초기설정 시 /etc/docker/damon.json 생성 # /etc/docker/damon.json { "bridge": "virbr0", "iptables": false, "dns": ["8.8.8.8"] } systemctl reload docker (도커 서비스 다시 로드) systemctl restart docker (도커 서비스 재시작) brctl show로 kvm 네트워크 사용하고 있는지 확인 user01@docker-qemu:/data$ brctl show bridge name bridge id STP enabled interfaces docker0 8000.024237726890 no virbr0 8000.52540030f4ca yes veth3acdf15..

AWS - CodePipeline

Code Pipeline = CI/CD 의 끝판왕 처리를 자동으로 해주며, 관리해줌 Code Pipeline이 하는 일은 ? 빌드, 테스트, 배포 과정을 관리 코드 변경 시 Code Pipeline은 이를 감지할 수 있음 소프트웨어 및 어플리케이션 출시 자동화 가능 빠르고 쉬운 디버깅을 가능케 해줌 배포(Deployment) VS 출시(Release) 출시는 최종적으로 사용자에게 제공하는 환경이며, 모든 테스트와 배포를 거친 후의 단계 배포는 100% 세상 밖으로 나오기 바로 전 단계를 의미 Code Pipeline 작동 방법 workflow - 코드 저장소에서 특정 코드가 변경되었을 시에 시작이 된다. code commit 에서 정의된 레포지토리에서 작동한다. 코드의 추가 및 수정 삭제 등 그럴 때마다..

AWS - Code Commit & Code deploy

Code Commit 파일들을 보관하는 저장 장소 (Repository) - Github과 매우 유사 코드, 사진, 라이브러리, 그 밖에도 어플리케이션을 구동하기 위한 모든 파일 등.. 동시에 많은 사람들이 저장 장소 접근 및 업데이트 가능 버전 컨트롤 기능 제공 Ex ) 언제 어떻게 누가 저장 장소 내용을 변경하였는지 Code Deploy = 자동배포 (Automated Deployment) 장점 새로운 기능들의 빠른 배포 소프트웨어 & 서버 다운타임 X Manual 에러 X CD를 하지 않는다면, 서버를 닫고 작업이 이루어진 후에 작업이 끝나야만 서버를 재시작 후에 사용이 가능하다. 2가지 방식이 존재 Rolling 배포 현재 Prod에서 동작중인 서버가 있고 또 개발자들이 어떤 기능을 구현했고 그 ..

AWS - CI/CD

CI / CD CI : Continuous Integration (지속적인 통합) 통합 : 개발자들의 자기들의 개발이 중앙 레포지토리에 반영하고 테스트를 하고 내 것이 다른 개발자들에게 영향이 가지 않게한다. 개발자들의 코드충돌을 막아준다. CD : Continuous Deployment (지속적인 배포) 코드를 수정하고 지속적으로 프로그램을 배포함으로서 사용자들이 불편함을 느끼지 않도록 개발자들의 짐을 많이 덜어준다. CI/CD의 장점 자동화 시스템(Automation) - 테스트 반복적인 일의 경우 자동화를 통해 개발자들의 짐을 덜어준다. Incremental Change 예시로, 쇼핑몰 사이트에서 고객이 옷을 찾다가 가격에 대한 정보가 없다라는 버그를 발견시 개발자가 가격이 보여지는 기능을 구현하기..

AWS - API Gateway

RESTful API에 관한 설명은 ETC 카테고리 설명 참조 https://startces.tistory.com/93?category=797529 API & RESTful API API → Application Programming Interface EX) 가족이 외식하기 위해 식당을 찾아 무엇을 먹을지 메뉴판을 보고 결정하며, 주방에는 주방장이 있다. 이때, 가족은 주방에 직접 가서 무엇을 주문할지 직접 말 startces.tistory.com 대부분 어플리케이션은 RESTful API 기반으로 운용됨 매우 힘든 RESTful API 관리 Authentication & Authorization → 모든 사람들의 요청을 허용하면 안된다. ex) 회원에게만 제공하는 혜택이 있어야 할 경우 비회원에게는 제..

API & RESTful API

API → Application Programming Interface EX) 가족이 외식하기 위해 식당을 찾아 무엇을 먹을지 메뉴판을 보고 결정하며, 주방에는 주방장이 있다. 이때, 가족은 주방에 직접 가서 무엇을 주문할지 직접 말하기 싫고, 주방장 역시 직접 가서 주문을 받기 싫은 상태일 때 이때, 중간에 주문을 집행 해주는 직원이 API 라고 할 수 있다. 쇼핑몰에서 고객이 원하는 화면을 제공해주기 위해서 요청한 화면을 보여주는 것이라고 보면 된다. API는 중간에서 복잡한 일들을 처리해주는 중요한 역할이다. RESTful API? API 종류들 중 하나 REpresentational State Transfer → 상태의 변화를 주기 위해 그 정보를 서버와 클라이언트에게 공유하고 주고받기 위해 사용..

AWS - DynamoDB (Stream)

DynamoDB Stream DynamoDB 테이블에서 일어나는 일들(삽입, 수정, 삭제 등)이 일어날 시 시간적 순서에 맞게 Streams에 기록 Log는 즉각 암호화가 일어나며 24시간동안 보관됨 → 24시간 후 로그 소멸 주로 이벤트를 기록하고 이벤트 발생을 외부로 알리는 용도 (예시 : Lambda Function) 이벤트 전&후에 대한 상황 보관 (24시간 유효) 어플리케이션이 2개의 AWS SDK와 연동이 되어있다고 가정할때 한가지 예시로는 DynamoDB API며 직접 소통하며 하나의 고유한 Endpoint와 연결 하나의 API는 하나의 EndPoint와 연결이 된다 라고 볼 수 있다. ex) 쇼핑몰을 운영한다 할때, 고객이 물건을 구매할 때 이벤트로 인식하여 람다함수가 실행 SNS로 메세지..

AWS - DynamoDB (DAX)

DynamoDB Accelerator (DAX) 다이나모 디비에서 제공하는 클러스터 In-memory 캐시 10배 이상의 속도 향상 읽기 요청만 해당사항 (쓰기 요청x) 읽기 요청이 많거나 그 크기가 많을 때 사용 EX) 블랙프라이데이 → 쇼핑 웹사이트 운영 (수많은 읽기 요청 예상) DAX 원리 DAX 캐싱 시스템 테이블에 데이터 삽입 & 업데이트 시 DAX 에도 반영 읽기 요청에 맞는 데이터가 DAX 에 들어있을 시 DAX에서 데이터 즉시 반환 (Cache Hit) ↔ (Cache Miss) DAX의 단점 쓰기 요청이 많은 어플리케이션에서는 부적절함 기 요청이 많지 않은 어플리케이션에 부적절함 아직 모든 지역에서 제공하지 않음

728x90
반응형