본문 바로가기
반응형

Linux85

Elasticsearch - 기본 용어 이해, 환경 구성 및 REST API 기본 요즘 Elasticsearch는 오픈소스로 많이 사용한다. BigData가 화제인 요즘 엘라스틱서치는 고성능의 풀텍스트 검색 및 분석 엔진으로 활용성이 높다. 오픈소스로 제공되며 준 실시간으로 대량의 데이터를 빠르게 저장하고 검색할 수 있다. 그럼 가장 기본(Basic)이 되는 핵심 요소들에 대해서 알아보자. Cluster(클러스터) 클러스터는 전체 데이터를 하나 또는 그 이상의 노드의 집합에서 유지하고 있다는 것을 의미한다. 하나의 클러스터는 다수의 로드로 구성될 수 있으며, 하나의 클러스터에 다수의 서버로 바인딩하여 운영하거나 하나의 서버에 다수의 클러스터를 운영할 수 있다. 실행 명령 bin/elasticsearch --cluster.name=elasticsearch 환경설정 파일 cluster.n.. 2024. 3. 18.
SQL - SELECT와 함께 WHERE와 ORDER BY 많이 사용하는 TSQL문 SELECT는 데이터베이스에서 데이터를 조회하는 데 사용하는 키워드로, 보통 SELECT 문은 다음과 같은 형식을 사용한다. SELECT FROM [WHERE ] [ORDER BY ] 은 조회할 열을 지정 은 조회할 테이블을 지정 은 조회할 데이터를 제한하는 조건을 지정 은 데이터를 정렬할 열을 지정 그럼 자주 사용되는 TSQL문 위주로 정리해 보자. 1. SELET 데이터를 조회하는데 사용한다. 특정 컬럼을 지정하여 볼 수 있다. 모든 열을 조회 - posts테이블의 모든 열을 조회하는 SELECT 문 SELECT * FROM posts; 특정 열만 조회 - post 테이블의 post_id, title, count 열만 조회 SELECT post_id, title, count FROM posts; 2... 2024. 3. 10.
AWS Credentials 저장위치, 적용 순서 AWS 인증 키는 아래와 같이 적용 할 수 있다. Python 기준으로 boto에 직접 인증키를 입력하지 않으면, 1번부터 순차적으로 인증키가 있는지 확인을 진행하고 적용이 된다. Passing credentials as parameters in the boto.client() method Passing credentials as parameters when creating a Session object 1. Environment variables 환경 변수(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) 2. Shared credential file (~/.aws/credentials) 3. AWS config file (~/.aws/config) 4. Boto2 config.. 2024. 3. 7.
Docker Swarm - Update(Rollout) 와 Rollback 이해 Docker Swarm 명령을 이용하다 보면, 익숙하지 않은 명령어 3개를 확인 할 수 있다. 이 명령은 Docker Swarm 에서만 사용이 가능한 명령으로 서비스를 효과적으로 관리하는데 목적을 두고 있다. 그럼 Update(Rollout) 와 Rollback에 대해 공부를 진행하기 위해 서비스를 만들어 보자. Swarm Init Swarm 모드를 사용하기 위해서 가장 먼저 해야 하는 작업으로, Swarm 서버를 구성하는 것이다. Swarm 모드는 다중 물리적인 호스트를 연결하여 Resource를 관리할 수 있는 기능을 제공한다. Swarm 활성화는 다음 명령으로 진행할 수 있다. docker swarm init # 만약 사설 ip가 다중으로 가지고 있는 경우 --advertise-add 으로, 하나를.. 2024. 3. 7.
Docker - 기본 배포/실행 방법 Docker를 이용한 기본 배포 시나리오는 다음과 같이 3단계로 이루어진다. 이미지 다운로드 -> 컨테이너 실행 -> 포트 매핑(선택, 네트워크 연결) 로 진행된다. 이를 기본적으로 실행하는 방법을 각 단계별로 순서대로 알아보고자 한다. Docker의 모든 이미지는 이름과 태그(Tag)를 가지고 있고 이를 이용해서 이미지를 다운로드하게 된다. 이미지 다운로드 이미지 다운로드는 기본적으로 docker login을 통해 로그인한 Docker Repo와 연결되고, 해당 저장소에서 이미지를 찾게 된다. docker image python:3.10-slim 그리고 이미지는 : 이후로 태그를 갖는데 태그는 아래와 같은 방식으로 사용되는 아래 문서를 참고하자. Docker - Image Alpine, Slim, St.. 2024. 3. 7.
Docker - 이미지, 컨테이너, 레이어, 가상화 이해 Docker를 사용하는 이유는 사용해보면 쉽게 알 수 있지만, 여기에서는 사용하기 전, 즉 왜 필요한지에 대해서 얘기해보고자 한다. Docker는 현재 많은 업체에서 배포환경에 사용하고 있는 CI/CD 기술에 필수요소로 자리잡은 기술이라고 할 수 있다. 왜 이처럼 많은 사람들이 Docker를 사용하는 것일까? 만약 여러분이 웹 서비스를 개발한다고 생각해보자. 자신의 노트북에서 개발을 진행하고, 실제 서비스를 위해서 클라우드에 위치한 서버에 서비스를 올려야 할 것이다. 노트북에서 웹 서비스에서 개발할 때 개발 기간이 길고, 다양한 서비스를 활용했다면, 이를 클라우드 서버에도 동일하게 구성을 해야 한다. 그리고 만약 서비스를 업데이트한다면, 추가적인 구성들도 서버에 적용해야 할 것이다. 특히 환경 설정이 많.. 2024. 3. 3.
Syslog - Priority와 Facility 이해 Syslog는 시스템, 장비 등에서 발생하는 이벤트를 네트워크로 전송하는 프로토콜이다. Syslog의 Priority와 Facility는 로그의 중요도와 발생 위치를 구분하는 중요한 역할을 한다. Priority Priority는 로그의 수준을 의미하며, 0부터 7까지 8단계로 구분된다. 각 Priority의 의미는 다음과 같다. 0: Emergency: 시스템이 사용 불가능한 상태 1: Alert: 즉각적인 조치가 필요한 상태 2: Critical: 심각한 문제가 발생한 상태 3: Error: 오류가 발생한 상태 4: Warning: 경고가 발생한 상태 5: Notice: 일반 정보 6: Info: 세부 정보 7: Debug: 디버그 정보 일반적으로 Priority 3 이상부터는 문제가 발생한 이벤트로.. 2024. 3. 1.
Docker Compose - 오류시 자동 재시작 Docker는 시스템 재시작 혹은 오류로인해 실행중인 컨테이너가 멈출경우 이를 어떻게 처리할 지 --restart라는 옵션을 이용해서 정의할 수 있다. --restart를 이용하여 사용할 수 있는 옵션은 다음과 같다. no: 컨테이너가 자동으로 다시 시작되지 않음 on-failure[:max-retries]: 0이 아닌 종료 코드로 종료되는 경우 컨테이너를 다시 시작하고 Docker 데몬이 컨테이너를 다시 시작할 수 있는 최대 시도 횟수를 진행함 always: 컨테이너가 중지되면 항상 다시 시작 unless-stopped: 컨테이너가 임의로 또는 Docker 데몬에 의해 중지되지 않는 한 항상 컨테이너를 다시 시작 시스템에서 사용하기 적절한 옵션은, on-failure이 유용하다. on-failure와 .. 2024. 2. 29.
Github - 파일 히스토리까지 완전 삭제 하기(reset, revert) Github을 사용하다보면 부주의하게 중요한 파일(토큰 정보, 인증 정보)을 실수로 올리는 상황이 발생한다. 이때 서버의 히스토리까지 완전히 삭제해야 하기 때문에 일반적인 삭제 방법으로는 어려울 수 있다. 그래서 여기에서는 파일을 삭제하는 방법에 대해서 얘기해 보도록 하겠다. 상황은 보통 commit만 하고 아직 merge를 하지 않은 상황이나 이미 머지를 완료하였다 하더라도 동일하게 적용이 가능하다. 그럼 먼저 reset, revert 방법이다. 1. 리셋, 되돌리기(reset, revert) reset은 가장 쉬운 방법으로, 원격 레포스토리지에 적용한 commit을 초기화 하는 것이 가능하다. 아래 명령을 이용하면, 현재 가장 마지막에 커밋된 내용을 되돌려 준다. git reset HEAD^ 아래와 .. 2024. 2. 29.
반응형