전체 글 402

[CentOS7] LVM 디스크 증설 시 에러 "resize2fs: Bad magic number in super-block while trying to open"

LVM 디스크 증설 시 에러 "resize2fs: Bad magic number in super-block while trying to open" 해당 에러는 리눅스의 파일 시스템이 xfs일 경우 발생 합니다. resize2fs 명령어 대신 xfs_growfs를 사용하면 에러를 해결할 수 있습니다. 명령어 작성 형식은 같으니 명령어만 바꾸고 똑같이 바로 뒤에 디바이스 경로를 작성 해주시면 됩니다. # resize2fs [디바이스 경로] xfs_growfs [디바이스 경로]

[Bash Shell Script] CentOS 7 Mod_Security2 설치 및 Mod_audit 로깅 설정 쉘 스크립트

CentOS 7 Mod_Security2 설치 및 Mod_audit 로깅 설정 쉘 스크립트 root 계정으로 실행 및 Apache는 기존에 설치되어있는 환경 이어야 합니다. #!/bin/bash yum -y install gcc gcc-c++ httpd-devel && cd /root && wget https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz && tar xvfz /root/pcre-8.43.tar.gz && cd /root/pcre-8.43 && ./configure --prefix=/usr/local/pcre && make && make install && cd /usr/local/src && wget ftp://xmlsoft.org/libxml2/libxml2..

[CentOS7] 리눅스 sed 에러 (sed: -e expression #1, char 12: unknown option to `s`)

리눅스 sed 에러 (sed: -e expression #1, char 12: unknown option to `s`) 리눅스 쉘 스크립트 등에서 sed를 사용할 때 "sed: -e expression #1, char 12: unknown option to `s`" 와 같은 에러가 발생할 수 있습니다. 일반적으로 sed -i "s/string/number/gi" 와 같이 사용될텐데, /를 |로 변경시켜 주거나 문자열 안에 /가 있다면 \/ 로 사용하여 이스케이프 시켜주어야 합니다. ex1) sed -i "s/string/number/gi" --> sed -i "s|string|number|gi" ex2) sed -i "s/st/ring/number/gi" --> sed -i "s/st\/ring/numb..

[MySQL] MySQL Slow Query Log 설정 방법

MySQL Slow Query Log 설정 방법 mysql -u root -p 를 이용해 접속 후 show variables like 'slow_query_%';를 입력하면 아래와 같은 화면이 출력 됩니다. OFF 상태일 경우 현재 Slow Query Log 설정이 되어있지 않은 상태인 것 입니다. mysql> show variables like 'slow_query_%'; +---------------------+-------------------------------+ | Variable_name | Value | +---------------------+-------------------------------+ | slow_query_log | OFF | | slow_query_log_file | ..

Database/MySQL 2020.05.22

[Grafana 6.7] Zabbix-Grafana 사용 시 에러 "Internal Server Error"

Zabbix-Grafana 사용 시 에러 "Internal Server Error" Zabbix-Grafna (또는 Zabbix) 사용 시 Internal Server Error가 발생하면 자빅스 서버의 /var/log/httpd/error_log 에서 아래와 같은 로그를 확인할 수 있습니다. (자빅스 서버에 Apache가 아닌 nginx로 설치했을 경우 nginx의 에러 로그를 찾아가시면 됩니다.) 해당 에러는 PHP의 메모리 부족으로 발생하는데, php.ini 파일에 memory_limit 부분을 변경 해주시면 됩니다. 초기 설정은 128M이고 변경 후 httpd 서비스를 재시작 해주면 적용 됩니다. 간혹, 자빅스에서 해당 값을 바꿔줘도 적용이 안되는 부분이 있는데, 아래 이미지와 같이 에러 로그에 ..

Monitoring/Grafana 2020.05.21

[ELK Stack] ELK Discover fields 검색/필터링 방법 (ELK Discover fields search)

Discover fields 검색 방법 (ELK Discover fields search) 좌측 매뉴에서 Discover를 누르면 아래와 같은 화면이 나타 납니다. beat.name은 filebeat을 설치한 호스트 명을 나타내는데, 여기서 보고싶은 서버의 우측 조그만한 + 모양의 돋보기를 클릭하시면 해당 서버의 로그만 확인할 수 있습니다. 반대로, 만약 되돌아오고 싶다면 - 모양의 돋보기를 클릭하시면 됩니다.

[ELK Stack] ELK 로그 파일 추출 방법 (ELK export logs, ELK CSV, ELK log data)

로그 파일 추출 방법 (ELK export logs, ELK CSV, ELK log data) ELK 환경에서 수집중인 로그를 파일(엑셀) 형태로 추출할 수 있습니다. 별도의 코드나 쿼리 필요 없이 kibana 웹 페이지 상에서 가능 합니다. 1) 좌측 매뉴 Discover 클릭 2) 우측 상단의 Save 선택 후 저장 3) 우측 상단의 Share 선택 후 CSV Reports 클릭하여 Create 4) 좌측 매뉴의 Management 클릭 5) Kibana의 Reporting 클릭 후 가장 우측에 보면 Actions에 다운로드 표시의 아이콘이 있는데, 이걸 클릭하면 다운로드가 진행 됩니다.

[ELK Stack] ELK 키바나 특정 호스트,타입 로그 검색 방법 (kibana log search)

키바나 특정 로그 검색 방법 (kibana log search) 아래와 같이 키바나의 Logs에서 특정 호스트나 로그 타입을 기준으로 로그 검색을 할 수 있습니다. and 연산 또는 or 연산을 지원하므로 원하는 조건에 맞게 검색하시면 됩니다. fields.server_name.keyword : filebeat 로그 설정 시 fields의 server_name에 작성한 이름 fields.log_stype.ketword : filebeat 로그 설정 시 fields의 log_type에 작성한 이름 beat.hostname : filebeat을 설치한 서버의 호스트 이름

[ELK Stack] ELK <-> filebeat 로그 인덱싱 설정 (ELK log monitoring)

ELK filebeat 로그 인덱싱 설정 (ELK log monitoring) kibana 웹페이지에서 좌측 메뉴의 Management → Create index pattern 클릭 후 우측의 Index pattern 에 filebeat* 입력 후 Next step을 클릭 합니다. @timestamp를 선택하면 Create index pattern 버튼이 활성화 됩니다. @timestamp 선택 후 Create index pattern을 클릭하여 생성 합니다. 로그를 수집할 서버쪽에서 filebeat을 정상적으로 설치 및 설정하였다면 좌측 매뉴 Logs를 클릭하면 수집한 로그들을 확인할 수 있습니다.

[ELK Stack] ELK 설치 (Elasticsearch, Logstash, Kibana, ELK install)

ELK 설치 (Elasticsearch, Logstash, Kibana, ELK install) ELK를 설치하기위해 yum repo를 추가 해주어야 합니다. 아래 명령어들을 복사 + 붙여넣기하여 repo를 추가해주시면 됩니다. 만약, 7점대를 설치하고 싶다면 6.x로 되어있는걸 7.x로 변경하시면 7점대의 버전을 다운로드할 수 있습니다. 참고로 elastic repo가 빠를땐 빠른데, 느릴땐 굉장히 느려서 설치만 ELK 설치만 거의 한시간가량 걸릴수도 있습니다. # kibana repo cat { "message" => ["%{IPORHOST:[apache2][access][remote_ip]} - %{DATA:[apache2][access][user_name]} \[%{HTTPDATE:[apache2..