수업 1웹 앱과 시스템 서비스 로그 해석: /var/log/syslog, /var/log/messages, journald (journalctl), 앱별 로그 및 필터링 방법리눅스와 macOS의 웹 앱 및 서비스 로그를 읽고 필터링하는 방법을 배웁니다. syslog, journald, 앱 로그를 다루며, journalctl, grep 등의 도구를 사용하여 문제를 분리하고, 이벤트를 상호 연관짓고, 반복 가능한 로그 쿼리를 구축합니다.
Syslog 구조와 일반 로그 위치journalctl 필터 및 시간 범위 사용웹 서버 액세스 및 오류 로그 읽기grep, awk, sed로 로그 필터링타임스탬프로 다중 서비스 이벤트 상호 연관수업 2프로세스 식별 및 분석: ps aux, pstree, pmap, lsof, strace — 문제 프로세스 찾기 및 동작 검사문제 프로세스를 찾고 검사하는 기법을 개발합니다. ps, pstree, pmap, lsof, strace를 사용하여 프로세스 계층을 매핑하고, 열린 파일과 포트를 검사하며, 시스템 콜을 추적하고, 리소스 급증을 특정 PID와 연결합니다.
ps와 top으로 무거운 프로세스 위치 파악pstree로 부모-자식 관계 시각화pmap으로 메모리 맵 검사lsof로 열린 파일과 포트 찾기strace로 시스템 콜 및 멈춤 추적수업 3리눅스 네트워크 진단: ss, netstat, ip a, ip route, ethtool, ifconfig — 인터페이스 및 라우트 정보 읽기리눅스와 macOS 네트워크 문제를 진단하는 기술을 습득합니다. ss, netstat, ip, ifconfig, ethtool을 사용하여 소켓, 라우트, 인터페이스를 검사하고, 수신 대기 서비스를 식별하며, 연결성과 처리량 문제를 확인합니다.
ss와 netstat으로 수신 대기 포트 나열ip로 IP 주소 및 라우트 검사ethtool로 링크 속도 및 듀플렉스 확인ifconfig와 ip로 인터페이스 상태 사용일반적인 라우팅 및 DNS 문제 탐지수업 4디스크 I/O 조사: iostat, iotop, blktrace, 파일시스템 유형 및 마운트 옵션 확인디스크 I/O 병목현상과 파일시스템 동작을 조사합니다. iostat, iotop, blktrace를 사용하고, 파일시스템 유형과 마운트 옵션을 검사하며, I/O 패턴을 애플리케이션 워크로드와 지연 증상과 연관짓습니다.
iostat으로 I/O 포화 상태 파악iotop으로 I/O 무거운 프로세스 찾기blktrace로 블록 수준 활동 추적파일시스템 유형 및 장단점 비교성능을 위한 마운트 옵션 검토수업 5실시간 모니터링 명령어: top, htop, vmstat, iostat, sar, mpstat — 정확한 사용 예시 및 해석실시간 시스템 동작을 이해하기 위한 실시간 모니터링 도구를 탐구합니다. top, htop, vmstat, iostat, sar, mpstat를 사용하여 CPU, 메모리, I/O 병목을 발견하고, 주요 필드를 해석하며, 짧은 성능 스냅샷을 캡처합니다.
top과 htop에서 CPU 및 로드 읽기vmstat으로 메모리 및 스왑 인사이트iostat과 iotop으로 디스크 I/O 모니터링sar와 mpstat으로 과거 스냅샷명령 출력 나중에 검토를 위한 내보내기수업 6웹 서버 성능 분석: nginx/apache 상태 모듈, 액세스/오류 로그, 느린 요청 분석, HTTP 상태 패턴nginx와 Apache에서 웹 서버 성능을 평가하는 방법을 배웁니다. 상태 모듈을 읽고, 액세스 및 오류 로그를 분석하며, 느린 요청을 탐지하고, HTTP 상태 패턴을 해석하여 클라이언트 문제와 서버 병목을 구분합니다.
nginx 상태 엔드포인트 활성화 및 읽기Apache mod_status 및 server-status 사용느린 요청 및 타임아웃 식별HTTP 상태 코드 분포 분석봇, 스캔, 악의적 트래픽 탐지수업 7장기적 해결책: 용량 계획, 리소스 제한 (systemd, cgroups), 커널 및 웹 서버 설정 튜닝, 애플리케이션 프로파일링 도구 및 사용 시기반복적인 소방 대신 장기적 해결책을 계획합니다. 용량 계획을 실습하고, systemd와 cgroups로 리소스 제한을 설정하며, 커널과 웹 서버 파라미터를 튜닝하고, 코드 및 설정 변경을 안내하는 프로파일링 도구를 선택합니다.
용량 계획을 위한 데이터 수집systemd 유닛 리소스 제한 구성기본 cgroup 제약 안전하게 적용커널 및 웹 서버 파라미터 튜닝앱 프로파일링 도구 선택 및 사용수업 8시스템 리소스 메트릭 이해: CPU, 메모리, I/O, 네트워크 — 모니터링할 항목과 이유핵심 시스템 메트릭과 건강 상태를 드러내는 내용을 이해합니다. CPU, 메모리, 디스크, 네트워크 지표를 해석하고, 안전 임계값을 배우며, 웹 워크로드와 백그라운드 서비스에 가장 중요한 메트릭을 결정합니다.
CPU 활용률, 로드 평균, 실행 큐메모리 사용량, 캐시, 스왑 동작디스크 처리량, 지연, 큐 깊이네트워크 대역폭, 오류, 드롭주요 메트릭에 대한 경고 임계값 선택수업 9임시 완화 기법: 서비스 재시작, 프로세스 우선순위 조정, 캐시 해제, 서비스 우아하게 오프라인 — 명령어 및 예상 결과사고 중 안전한 임시 완화 조치를 적용합니다. 서비스를 재시작하고, 우선순위를 조정하며, 캐시를 관리하고, 서비스를 우아하게 오프라인으로 전환하며, 명령어, 위험, 완화 효과 확인 방법을 이해합니다.
중요 서비스 안전하게 재시작nice와 renice로 프로세스 우선순위 조정페이지 캐시와 디렉토리 캐시 주의 깊게 해제웹 앱 유지보수 모드로 전환메트릭에 대한 완화 영향 확인