728x90
반응형

DevOps 54

Grafana_Prometheus

정의 그라파나는 오픈소스로 열려있는 모니터링 툴이며 프로메테우스와 같이 붙어다니는 경우가 많음 설치 #설치 wget https://dl.grafana.com/oss/release/grafana-.linux-amd64.tar.gz #압축 해제 tar -zxvf grafana-.linux-amd64.tar.gz #디렉토리 설정 sudo mv grafana- /usr/local/grafana #config 파일 입력 sudo nano /usr/local/grafana/conf/grafana.ini configuration ( grafana.ini ) [server] http_port = 3000 protocol = http domain = localhost root_url = %(protocol)s://%(d..

DevOps/Grafana 2023.01.13

Exporter 연동

정의 미리 정의된 작업을 하는 소프트웨어나 서비스를 지칭하는 것으로 여기서는 프로메테우스에게 Metric을 노출하는 작업을 함(다른 곳으로도 Exporting 가능함) Exporter의 Endpoint를 이용하여 Prometheus가 Scaraping을 할 수 있음 특징 가볍고 효율적으로 작동함 => 기존에 있는 애플리케이션을 방해하지 않을 정도로 가벼움 일반적으로 text-based 형식으로 Metric을 노출시킴(ex. Prometheus Format) 종류 Node Exporter: Exports machine-level metrics such as CPU, memory, and disk usage from a Linux machine. Blackbox Exporter: Allows Promethe..

DevOps/Prometheus 2023.01.13

Prometheus_

정의 시계열 데이터들을 모니터링하기 좋은 시스템 도구 특히 로그보다는 메트릭을 수집하여 모니터링할 때 빛나는 도구 Pull-Based Model => target을 지정해주어야 함 설치 여러가지 경로로 다운로드 받을 수 있음 - https://prometheus.io/download/ # 다른 버전 사용 시,다른 버전에 맞추어 설치하면 됨 wget https://github.com/prometheus/prometheus/releases/download/v2.37.0/prometheus-2.37.0.linux-amd64.tar.gz # 압축 해제 및 이름 변경 tar -xvf ./prometheus-2.37.0.linux-amd64.tar.gz mv prometheus-2.37.0.linux-amd64.t..

DevOps/Prometheus 2023.01.13

Logstash vs Filebeat

Log 파일의 위치와 Logstash 또는 Filebeat 프로세스가 위치한 머신이 같을 때 → Logstash 해도 cost가 그렇게 높지 않음 다를 때 → Filebeat가 좀 더 적은 cost를 씀 Log에 대한 transform 이나 complex한 작업이 필요할 때 → Logstash 사용 x → Filebeat 사용 Filebeat나 Logstash 프로세스가 있는 instance가 down되었을 때 filebeat → 자체적으로 registry를 사용하고 있음 때문에 last read position을 기억하고 있고 restart가 되었을 때 해당 부분부터 다시 resending함 중복된 로그가 담길 염려가 없음 Logstash → 자체적으로 persistent queue를 사용하고 있음 때..

DevOps/ELK 2023.01.04

Null Check

이건 말 뜻 그대로 null 체크이다. 값이 비었는지 체크하는 것이다. 이것이 왜 필요하냐..? 예외 상황이 발생해서 그렇다. 간단하게 null check는 'z'로 가능하다. #!/bin/bash # Define a variable variable="Hello, world!" # Check if the variable is null if [ -z "$variable" ] then # Print a message if the variable is null echo "variable is null" else # Print a message if the variable is not null echo "variable is not null" fi 만약 string의 null을 체크할 때는 'n'도 된다. if..

DevOps/Shell 2023.01.01

exit

exit는 우리가 프로그래밍 할 때의 main 함수의 return과 비슷하다고 생각하면 된다. 실제로 Shell script의 끝을 지정하는 것이다. 다시 말해서 우리는 스크립트(프로세스)의 종료를 exit로 결정할 수 있다고 봐도 된다. exit code의 범위는 0~255로 솔직히 맘대로 정할 수 있다. 일반적으로는 exit code가 0이라면 정상 종료 그 외에는 비정상이라고 할 수 있다. 특히 예시를 들어주자면 0: Success. The command or program completed successfully. 1: General error. The command or program encountered an unspecified error. 2: Misuse of shell builtins...

DevOps/Shell 2023.01.01

let [command]

let은 쉘 스크립팅을 할 때 많이 쓴다. 예시부터 보자 #!/bin/bash # Declare variables a=10 b=20 # Use the let command to perform arithmetic operations let result=a+b echo "$a + $b = $result" let result=a-b echo "$a - $b = $result" let result=a*b echo "$a * $b = $result" let result=a/b echo "$a / $b = $result" let result=a%b echo "$a % $b = $result" ??? let 없어도 result에 저장되는 것 아니야?? 맞다. 그렇긴 하다. 하지만 그것은 연산이 아니라 문자열이 저장된..

DevOps/Shell 2023.01.01

environment variable

정의 환경 변수란 쉘 전체에 적용되는 변수를 뜻한다. 다시 말해서 어떤 프로세스에서도 해당 변수를 사용할 수 있다. 우리가 시스템 변수, 환경 변수를 설정하는 것도 같은 원리다. 목적 대부분 환경 변수가 필요한 이유는 프로그램이 어디에 있는지 정확하게 모르기 때문이다. 다시 말해서 우리가 install 한 프로그램의 위치를 지정해주지 않으면 프로세스가 자동으로 찾기는 어렵다는 말과 같다. 그래서 맨날 $JAVA_HOME, $PATH 등 맨날 시스템 변수 설정해주는 것이다. 하지만 이외에도 어떤 프로세스에서도 사용할 수 있는 변수를 설정하는데 목적이 있다. Shell Script에서의 envs 다시 본론으로 들어와서 Shell Script에서는 환경 변수로 선언한 변수들을 선언 없이도 쓸 수 있다. 다른 ..

DevOps/Shell 2022.12.31

Filebeat Tutorial, 파일비트 튜토리얼

더 자세한 내용은 Logstash를 보면 좋다. [DevOps/ELK] - Logstash Tutorial, 로그스태시 튜토리얼 Filebeat Turorial -https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-overview.html 목적 경량으로 log를 forwarding 할 수 있음 설치 - https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-installation-configuration.html 직접 curl을 통해 다운로드 가능 curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.5..

DevOps/ELK 2022.12.29

ELK, Elasticsearch+Logstash+Kibana

E + L + K Elasticsearch : 분석 및 저장 기능 Logstash : 수집 기능 Kibana : 시각화 도구 1. Elasticsearch - Apache Lucene 기반의 검색 엔진으로 Logstash를 통해 수신된 데이터를 저장소에 저장하는 역할 - 정형, 비정형, 위치정보, 메트릭 등 원하는 방법으로 다양한 유형의 검색을 수행하고 결합 - 모든 레코드를 JSON document 형태로 입력하고 관리하고 있으며, 일반적인 DB와 마찬가지로 쿼리한 결과에 대해 일치하는 원본 도큐먼트를 반환 (텍스트 외에도 숫자, 날짜, IP 주소, 지리(geo) 정보 등 다양한 데이터 타입에 대해 최적화) - 모든 통신을 REST API를 이용하도록 만들어 사용하기 쉽고, 확장 가능하며, 유연함 2...

DevOps/ELK 2022.12.29
728x90
반응형