DevOps 41

Jenkins- DevOps CI/CD

1. React - Jenkins- Jenkins 서버 , 배포 서버 구분 https://roomq.tistory.com/m/29 [CI&CD] EC2, Docker, Jenkins, React 프로젝트 CI/CD 구축현재 진행 중인 구름톤 풀스택 과정에서 팀 프로젝트의 CI/CD를 구축해 보았습니다. CI/CD 구축은 처음 해봐서 구글링을 통해 다양한 구축법을 조사한 결과 오성원님의 블로그를 중심으로 추가/변roomq.tistory.com 2. Jenkins Pipeline (DSL)pipeline { agent any tools { maven 'maven3.8.2' } stages { stage('github clone') { step..

Nginx와 nginx.conf 파일 설정

1. Nginx란? 용도 클라이언트로부터 요청 받을 때 요청에 맞는 정적 파일 응답(Http Web Server) Reverse Proxy Server로 WAS 서버 부하를 줄일 수 있는 로드밸런서로 활용 특징 Nginx는 Event-Driven 구조로 동작(동접자수 1만명 넘어갈 때 효율적인 방안을 위해), 한 개 또는 고정된 프로세스만 생성 (새로운 프로세스와 쓰레드 생성하지 않음 ) Nginx는 하나의 Master Process와 다수의 Worker Process로 구성, Master Process는 설정파일을 읽고, 유효성 검사 및 Worker Process관리 0. nginx의 /etc/nginx 디렉터리 내부, 정적 콘텐츠 가저오기 위한 설정 1) sites-available : sites-a..

DevOps 2023.06.18

PM2, Nginx //front app 배포

Node.js의 프로세스 매니저 PM2Node.js는 싱글스레드로 Node.js 애플리캐이션은 단일 CPU 코어에서 실행된다. 따라서 CPU의 멀티코어시스템을 사용할 수 없다. 이 문제를 해결하기 위해 클러스터(Cluster) 모듈을 통해 단일 프로세스를 멀티 프로세스(Worker)로 늘릴 수 있는 방법을 제공한다. 즉, 클러스터 모듈을 사용해서 마스터 프로세스에서 CPU 코어 수 만큼 워커 프로세스를 생성해 모든 코어를 사용하게 개발하면된다. PM2의 등장 배경애플리케이션을 실행하면 처음에는 마스터 프로세스만 생성된다. 이때 CPU 개수만큼 워커 프로세스를 생성하고 마스터 프로세스와 워커 프로세스가 각각 수행해야 할 일들을 정리해서 구현하면 된다. 예를 들어 워커 프로세스가 생성됐을 때 온라인 이벤트가..

DevOps 2023.06.13

Docker, UFW, IPTABLES 방화벽

1. 데스크탑(프리도스)에 우분투를 설치하여 개인서버로 사용하면서 발생한 문제점 1) 공유기에서 포트포워딩을 해 외부ip -> 데스크탑 ip로 바라보게한 후 docker에서도 마찬가지로 포트포워딩해 특정 이미지 바라보게 했으나, 로컬에서는 docker에서 띄운 nginx라던지, was에 접근 가능하나 외부ip:특정포트를 타고 들어오면 도커에 연결이 안되었음. * 도커 네트워크 쪽 추가 공부 https://velog.io/@cloudjun/UFW-DOCKER-%EC%A0%9C%EB%8C%80%EB%A1%9C-%EB%B0%A9%ED%99%94%EB%B2%BD%EC%97%90-%EC%A0%81%EC%9A%A9%EB%90%98%EC%A7%80-%EC%95%8A%EB%8A%94-%EB%AC%B8%EC%A0%9C ..

CloudWatch, CloudTrail이란?

1. CloudWatch 란? AWS 리소스와 AWS 에서 실시간으로 실행중인 애플리케이션을 모니터링하는 서비스이다. 지표를 감시해 알림을 보내거나 임계값을 위반한 경우 모니터링 중인 리소스를 자동으로 변경하는 경보를 생성할 수 있다. 경보를 통해 인스턴스 중지, auto scaling 및 Amazon SNS 작업 시작 등 을 구성할 수 있다. 1) namespace : EBS, EC2, ELB, RDS 등을 namespace라고 한다. 2) Metric : CPU 자원 사용률 등이 metric이 된다. 2. CloudTrail이란? AWS 계정의 거버넌스, 규정 준수, 운영감사, 위험 감사를 지원하는 서비스로 CloudTrail을 사용하면 AWS 인프라에서 계정활동과 관련된 작업을 기록하고 지속적으로 ..

DevOps/AWS 2023.03.11

ECS(Elastic Container Service), ECR(Elastic Container Repository)

1. ECS 란 ECS란 완전관리형 컨테이너 오케스트레이션 서비스로 Amazon Route 53, Secrets Manager, AWS Identity and Access Management(IAM), Amazon CloudWatch 등의 다른 서비스와 통합을 통해 컨테이너 배포 및 확장을 위한 익숙한 환경을 제공할 수 있다. 클러스터에서 컨테이너를 쉽게 실행, 중지 및 관리할 수 있게해주는 컨테이너 관리 서비스이다. http://ecs.catsdogs.kr.s3-website.ap-northeast-2.amazonaws.com/ko/ 홈 :: DemoGo - Amazon ECS Cats and Dogs DemoGo - Cats and Dogs 사랑과 행복을 찾아서 이 워크샵은 Amazon ECS, Fa..

DevOps/AWS 2023.02.18

오토 스케일링(Auto Scaling)

1. 오토 스케일링 CPU, 메모리, 디스크, 네트워크 트래픽과 같은 시스템 자원들의 메트릭 값을 모니터링하여 서버 사이즈를 자동으로 조절하는 서비스 // 스케일링이란 인스턴스 혹은 컴퓨팅 파워를 늘리는 것을 말한다. //스케일 아웃 스케일 인 2.시작(구성) 템플릿 Auto Scaling 그룹에서 인스턴스를 시작하는데 사용하는 템플릿으로, AMI(이미지)라고 생각해도 된다. 템플릿이라 함은 똑같은 OS 환경의 인스턴스를 간편하게 복제하기 위해서 구성하는 것이다. 따라서 템플릿을 오토스케일링 그룹에 지정시킴으로서, 오토스케일링을 통해 인스턴스를 늘리면 그 인스턴스의 환경 구성이 템플릿에 설정된 환경에 따라 복제됨으로써 서비스를 늘린다는 개념인 것이다. 템플릿은 수정이 불가능하다. 만일 옵션을 바꿀 필요가..

DevOps/AWS 2023.02.18

AWS EBS vs. EFS vs. S3

Block Level Stoarge vs. Object Storage 1. Block Level Storage : 파일을 저장할 때 Block Level Storage는 블록 단위의 작업을 지원하기 때문에 변경된 데이터만 최신화해주면 된다. 따라서 Block Level Storage sms낮은 I/O 레이턴시를 자랑하며 Read/Write 작업이 빠르다는 장점이 있다. 즉, 자주 파일이 업데이트되고, Read/Write 작업이 빈번하다면 Block Level Storage가 좋은 선택이 될 수 있다. 2. Object Storage : 변경된 파일은 새로운Object로 인식하며 기존의 파일은 지우고 새로운 파일이 대체하게 된다. 따라서 Read/Write가 빈번한 환경이라면 작업이 오래걸린다. 하지만, ..

DevOps/AWS 2023.02.17