neo 8달전 | parent | favorite | on: GN⁺: 리눅스 위기 관리 도구(brendangregg.com)
Hacker News 의견
  • 4:07pm 패키지 설치 실패, 저장소를 해결할 수 없음. /etc/apt 설정에 문제가 있음…

    • 클라우드 환경의 단점이 있지만, 이런 상황에서 유용함. 복잡한 수리 대신 문제가 있는 기계를 종료하거나 풀에서 제거하고 새 기계를 사용함으로써 문제를 해결할 수 있음.
  • 컨테이너화된 서버들이 많지만, 여전히 도전과제가 존재함.

    • 도커 이미지 내의 많은 도구들이 보안 스캔 도구에 의해 위험 요소로 표시됨. gdb와 같은 도구는 우려의 대상이지만, 많은 도구들은 그렇지 않음.
    • 이를 피하기 위해 별도의 볼륨에 도구들을 정적 바이너리로 두거나 마운트 경로를 설치 접두어로 사용하여 컴파일 및 설치함. 디버깅이 필요할 때는 운영팀이 볼륨을 읽기 전용으로 일시적으로 마운트함.
  • 특정 커널 기능을 활성화해야 하는 디버그 도구가 있을 경우, 같은 호스트에서 실행되는 다른 컨테이너에 미치는 영향에 대한 우려가 있음.

  • FreeBSD 시스템에서는 /rescue/ 디렉토리가 있어, 약 150개의 중요 도구를 결합한 단일 정적 링크된 약 17MB 바이너리 파일을 제공함.

  • 넷플릭스에서 근무할 때, Brendan과 그의 팀은 bpftrace, bcc, 작동하는 perf와 같은 디버깅 도구를 곳곳에 설치해두었고, 이는 여러 번 생명을 구하는 역할을 함.

  • strace가 리스트에 없는 것에 놀람. 프로그램이 쓸모없거나 잘못된 에러 메시지를 반환할 때 특히 유용한 도구임.

  • SRE 유형의 포지션을 면접할 때 이러한 도구들을 항상 다룸. 후보자가 기억하는 특정 명령어보다는 가능한 것, 사용 가능한 도구의 종류, 그리고 그 사용법을 중요시함.

  • 도구 설치가 불가능한 위기 상황에서는 Docker를 통해 많은 유틸리티를 실행할 수 있음. 예를 들어, 호스트 네트워크에 연결된 상태로 tcpdump를 실행하는 Docker 컨테이너를 빌드하고 실행하는 방법을 제시함.

  • yum install이 선호되지만, Docker가 사용 가능하다면 추가적인 매핑이 필요하더라도 이는 실행 가능한 대안임. rootless/podman 설정에서는 작동하지 않을 수 있음.

  • nmap, netstat, nc가 언급되지 않았음. 이 도구들은 여러 번 문제를 해결하는 데 도움이 됨.

  • 루트 액세스를 얻을 수 있음? 시스템 관리자에게 티켓을 올려야만 어떤 작업도 수행할 수 있음.

  • 추가하고 싶은 것은 nmap임. 네트워크 연결 문제는 일부 앱에서 명확하지 않을 수 있음.