728x90
반응형

SRE/Linux Basics 43

Proxy

Proxy Server 운영 예시 Proxy Open source : squid 관련 설정 파일 /etc/squid/squid.conf 주요 파일 설정 acl : Access Control List, 모든 컴퓨터가 아닌 지정된 컴퓨터나 네트워크만 프록시 서버에 접근할 수 있도록 제한하는 구문 http_access : allow, deny 설정 가능 ( http 접근 허용 여부) cache_dir : 캐시할 디스크를 지정 ufs : 일반적으로 사용되는 스퀴드용 파일 시스템 지정 /var/spool/squid : 캐시 디렉터리 지정 1000: 캐시할 데이터 공간을 지정 (MB) 16: 캐시에서 사용할 하부 디렉터리 개수 256: 앞의 16개 디렉터리 안에 다시 생성할 디렉터리 개수 visible_hostna..

SRE/Linux Basics 2022.12.07

find

정의 file을 찾아주는 명령어 기본 포맷 find [target directory] [option] [expression] **상대 경로, 절대 경로 모두 가능 ** Linux에서는 인자 값을 생략한다면 현재 디렉토리(.) 입력 받은 것으로 간주 But Unix 에서는 오류 용도 파일을 찾는데 주로 쓰이며 파일의 옵션을 넣어 원하는 파일들을 얻어낸다. 수많은 예시들이 존재함 ################################################################# -name (파일 이름) # 현재 디렉토리에서 .txt 확장자 모두 찾기 find . -name "*.txt" # 현재 디렉토리에서 .txt 확장자 파일 검색 후 모두 삭제 find . -name "*.txt" -d..

SRE/Linux Basics 2022.12.07

실시간 모니터링

top 실시간으로 시스템에 대한 전반적인 상황과 각 프로세스 목록을 제공해주는 대표적인 명령어 기본적으로 3초마다 상태 출력 $ top 다음은 추가적으로 값을 지정해야 하는 옵션 top명령어는 단축키를 사용하여 정렬해서 보는 것이 중요 단축키 정보를 볼 수 있는 가장 쉬운 방법은 h를 입력 ps와 top의 차이점 ps는 ps한 시점에 proc에서 검색한 cpu 사용량 top은 proc에서 일정 주기로 합산해 cpu 사용률 top 실행 후 명령어 참고링크 https://zzsza.github.io/development/2018/07/18/linux-top/ https://github.com/hishamhm/htop https://github.com/MrRio/vtop https://github.com/ak..

SRE/Linux Basics 2022.12.07

네트워크 모니터링

lsof lsof는 디스크 상황 뿐만 아니라 네트워크 상황도 확인가능 -i 옵션을 사용하면 연결된 네트워크 상황을 간단하게 모니터링 -i protocol_name port_number (특정 포트, 프로토콜 사용하는 프로세스 정보) $ lsof -i netstat 네트워크 상태를 살펴보는 가장 유용한 툴 윈도우를 포함 대부분의 OS에 설치되어 있음 => Ubuntu에서는 간혹 netstat이 빠져있음 => apt-get install net-tools grep과 많이 조합해서 사용 네트워크 연결, 라우팅 테이블, 인터페이스 정보 및 통계, masquerade 연결, 멀티캐스트 등 크게 6가지 정보를 제공 netstat -r -i 옵션은 인터페이스 별 상황을 제공한다. $ netstat –i 아무런 옵션 ..

SRE/Linux Basics 2022.12.07

I/O 모니터링

iostat 가장 많이 대표적인 I/O 모니터링 툴, CPU와 I/O에 대한 통계를 제공 I/O에서 얼마나 리소스를 점유하는지 확인하는데 가장 효과적 주의할 점은 vmstat와 마찬가지로 첫 번째 라인은 부팅 되고 난 후 지금까지 통계이므로 무시 주로 쓰는 옵션은 -d (디스크), -p (지정된 디스크 장치), -x(확장된 통계, extend) $ iostat 5 3 lsof list open files의 약자로 실행 중인 프로세서에서 열려있는 파일 목록을 제공 아무 생각 없이 로그를 출력하고 로그가 얼마나 쌓였는지도 모른 채 시스템을 운영한다면 언젠가 장애가 발생하므로 이 명령어를 사용하여 확인하는 것이 좋음 주로 쓰는 옵션 -u(특정 유저 사용) directory(해당 디렉토리를 사용하는 프로세스) ..

SRE/Linux Basics 2022.12.07

프로세스 모니터링

pstree 대부분의 프로세스는 홀로 존재하지 않고 한 프로세스가 다른 프로세스를 생성 가능 이 때 프로세스 간의 상관 관계 확인이 필요함(부모, 자식 프로세스) pstree는 현재 수행 중인 프로세스 목록의 관계를 트리 형태로 보여줌 (-ap) 옵션을 가장 많이 씀 옵션 설명 -a 지정한 argument까지 출력 -p PID, 프로세스 아이디를 같이 출력 -H PID 해당 PID를 Highlighting 하여 출력 -g GID, 그룹 아이디를 같이 출력 -u UID, 유저 아이디를 같이 출력 ps 현재 수행 중인 프로세스에 대한 정보를 보여줌 (-ef) 옵션 + grep 을 가장 많이 씀 $ ps -ely –eLf옵션은 모든 쓰레드 정보를 상세히 보여줌 어떤 쓰레드가 무한 루프에 빠졌을 때 이 옵션을 ..

SRE/Linux Basics 2022.12.07

전체적인 모니터링

vmstat Report Virtual Memory STATistics의 약자로 CPU 사용량, 프로세스, 메모리, 페이징, 블락 I/O, 트랩스, 디스크에 대한 통계 정보를 제공 첫 번째 값은 부팅 되고 지금까지 상황에 대한 통계로 현시점의 통계가 아님 vmstat 명령의 첫 번째 줄은 평균치를 나타내기 때문에 실제 의미가 없는 데이터라고 생각하고 모니터링을 수행 그러므로 첫 번째 값은 제외하고 분석 참고링크 https://waspro.tistory.com/155 https://pearlluck.tistory.com/124 https://en.wikipedia.org/wiki/Vmstat https://linux.die.net/man/8/vmstat

SRE/Linux Basics 2022.12.07

CPU 모니터링

mpstat Multi-Processor STATistics의 약자로 추측됨 CPU만 모니터링하고 상세 분석이 필요할 때 사용하며, 사용 가능한 각각의 CPU 상황을 보여줌 mpstat, iostat, pidstat등은 시스템에서 기본으로 제공해주지 않으며, sysstat이란 패키지를 설치한 후 실행 가능함 옵션 없이 사용할 경우 mpstat는 부팅 시부터 현재까지 평균 CPU 사용률 수치를 보여주므로 무시 위와 같이 상세한 인터럽트 정보를 제공하며 각 항목에 대한 설명은 cat /proc/interrupts로 확인 가능 #첫 번째 CPU에 대한 정보 mpstat -P 0 #모든 CPU에 대한 정보 mpstat -P ALL # 5초 간격으로 3회 모든 CPU에 대한 정보 mpstat 5 3 참고링크 ht..

SRE/Linux Basics 2022.12.07

MySQL

Linux MySQL 목적 윈도우처럼 GUI 환경이 아닌 CLI 환경에서 MySQL을 제어할 수 있음 Linux DB 서버 생성 설치-실행 계정 생성 root 계정으로는 작업을 하지 않는 것이 좋음 따로 MySQL 작업용 계정을 만드는 것이 좋음 mkdir /home/mysql => home directory에 mysql 추가 groupadd mysql -g 999 => mysql이라는 그룹명을 가지고 GID 999으로 설정해서 그룹 생성 useradd -u 999 -g 999 -d /home/mysql -s /bin/bash mysql => UID는 999으로 설정해서 유저 생성, 해당 유저는 그룹 999에 속함, 해당 유저의 홈 디렉토리를 /home/mysql로 설정, 해당 유저가 사용할 쉘 지정 (..

SRE/Linux Basics 2022.12.05

FTP

FTP : File Transfer Protocol 파일을 전송하는 데 사용하는 전용 서비스 ** sftp 란 secure가 붙은 것으로 보안성이 추가된 FTP vsftpd : Very Secure FTPD FTP는 서버와 클라이언트 간의 2개의 Connection을 가짐 Control Data Control 연결은 FTP 명령어 및 서버의 응답코드를 전송하기 위한 목적(ASCII 코드를 사용하여 연결) Data 연결은 파일 전송(put, get 등) 서버에서 파일 디렉터리 리스팅된 자료를 전달할 때 사용 Data 연결은 다시 2가지 (Active, Passive)로 나누어짐 Active : 서버에서 클라이언트로 연결 시도(클라이언트 방화벽, 공유 기능 등에 영향을 받음) Passive : 클라이언트에서..

SRE/Linux Basics 2022.12.03
728x90
반응형