728x90
반응형

ETC 6

Ansible 개념과 구조 정리

Ansible이란? 기존에는 쉘 스크립트에 패키지 설치, 수정된 설정파일 등을 나열하고 스크립트를 실행하여 동일한 환경의 리눅스를 수정했다. 하지만 데이터 센터 중심의 인프라 환경에서 클라우드 환경으로 변화하고, 관리해야 할 서버의 숫자가 급격하게 증가하며 동시에 많은 서버에 동일한 환경을 배포해야하는 경우가 많이 있고 이는 쉘 스크립트로 불가능했다. 이를 해결하기 위해 IaC(Infrastructure as a Code)가 등장했고, IaC은 컴퓨터의 인프라 구성을 소프트웨어를 개발하는 것처럼 코드로 작성하는 것을 의미한다. Ansible도 이러한 IaC 개념이 도입되어 자동화 도구를 이용하여 인프라의 설정을 코드로 작성하고 이를 모든 서버에 배포함으로써 특정 환경을 동일하게 유지할 수 있도록 도와준다..

ETC/Ansible 2023.01.24

Elasticsearch 기본 개념과 CRUD 사용법 알아보기

Elasticsearch Elasticsearch는 Apache Lucene(아파치 루씬) 기반의 Java 오픈소스 분산 검색 엔진이다. JSON 기반의 문서를 저장하고 검색할 수 있으며 문서들의 데이터를 기반으로 분석 작업도 할 수 있다. Elasticsearch를 통해 루씬 라이브러리를 단독으로 사용할 수 있게 되었으며, 방대한 양의 데이터를 신속하게, 거의 실시간(NRT, Near Real Time)으로 저장, 검색, 분석할 수 있다. Elasticsearch와 Relational DB 비교 MySQL과 같은 RDBMS는 테이블을 만들고 테이블에 각 필드를 미리 정의해야하지만, Elasticsearch는 스키마를 미리 정의할 필요가 없고 자동으로 해당 document를 분석한 뒤 document에 ..

ETC/ELK 2022.04.25

Docker를 활용한 Filebeat, ELK stack 설치 및 Suricata 연동

Docker를 활용한 Elasticsearch 설치 #elasticsearch image 다운 docker pull docker.elastic.co/elasticsearch/elasticsearch:7.15.0 #다운된 이미지 확인 docker images #elasticsearch container구동 docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.15.0 #프로세스 확인 docker ps -a #포트확인 netstat -anp | grep LIST | grep docker #설치테스트 확인 curl..

ETC/ELK 2021.10.08

Docker를 활용한 filebeat, ELK stack 설치하기 (AWS EC2 Ubuntu 20.04)

설치 환경: AWS EC2 Ubuntu 20.04 1. ELK stack 설치 https://github.com/deviantony/docker-elk GitHub - deviantony/docker-elk: The Elastic stack (ELK) powered by Docker and Compose. The Elastic stack (ELK) powered by Docker and Compose. - GitHub - deviantony/docker-elk: The Elastic stack (ELK) powered by Docker and Compose. github.com 1) 호스트 커널의 vm.max_map_count 설정 먼저, 프로덕션 환경에서 무리 없이 사용하기 위해 아래와 같이 vm.ma..

ETC/ELK 2021.10.07

Github Action을 활용해 ElasticBeanstalk로 자동 배포하기

저번에는 Github Action을 활용하여 프론트 부분을 자동 배포해보았고, 이번에는 Gihub Action을 활용하여 백엔드 서버를 자동 배포해보려고 한다. IAM 권한 추가 먼저 IAM 사용자에 AdministratorAccess-AWSElasticBeanstalk 권한을 추가해준다. 벡엔드 코드를 Github에 업로드 1. 인증키 코드에 넣기 s3 = boto3.client('s3', aws_access_key_id=os.environ["AWS_ACCESS_KEY_ID"], aws_secret_access_key=os.environ["AWS_SECRET_ACCESS_KEY"] ) 2. 환경변수 관리 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY 과 같은 환경변수들은 코드..

ETC/Git 2021.09.18

Github Action을 활용해 AWS S3, Cloudfront 자동 배포하기

Github Action이란? Github Actions이란 Github에서 제공하는 워크플로우(workflow)를 자동화하도록 도와주는 도구이다. 테스트, 빌드, 배포 등의 다양한 작업들을 자동화하여 처리한다. GIthub가 MS에 인수되면서 기존의 소스저장소의 기능에서 DevOps플랫폼으로 으로 발전하고 있다. 비슷한 서비스로는 Gitlab, Bitbucket등이 있다. 요즘 트랜드는 CI/CD의 통합이라고 할 수 있다. 즉, 소스저장소와 배포시스템을 통합하는 것이다. 아키텍처의 변화로 작아진 어플리케이션들을 부담없이 자주 배포하기 위함이다. 사용 방법은 GitHub 소스 레파지토리에 .github/workflows/[파일이름].yml 파일만 추가하여 작성하면 된다. Github Actions와 AW..

ETC/Git 2021.09.17
728x90
반응형