Container-Optimized OS에는 Container-Optimized OS 가상 머신 인스턴스에서 문제를 디버그하는 데 도움이 되는 주문형 정보를 수집하는 sosreport
유틸리티가 포함되어 있습니다. 정보는 인스턴스의 파일 시스템에 로컬로 수집 및 저장됩니다. Google은 이 데이터를 다른 곳에서 수집하거나 저장하지 않습니다.
인스턴스 문제 때문에 Google Cloud 지원으로 지원 사례를 열면 조사의 일환으로 sosreport
데이터를 제공하라는 메시지가 표시 될 수 있습니다. 이 페이지는 이 정보를 수집하는 방법을 보여줍니다.
sosreport
의 결과는 .tar.xz
아카이브에 암호화 없이 저장됩니다.
아카이브는 많은 중요한 시스템 구성요소(예: journald)에서 데이터를 수집하기 때문에 개인 식별 정보(PII)를 포함할 수 있습니다. 아카이브는 인스턴스에서 검사할 수 있으며 대부분의 내용은 일반 텍스트입니다. sosreport
도구는 오픈소스이므로 소스 코드를 검토할 수 있습니다.
sosreport 데이터 수집
보고서를 작성하려면 gcloud compute ssh
명령어를 사용하여 관련 가상 머신 인스턴스에 ssh로 연결합니다.
gcloud compute ssh [INSTANCE_NAME]
그러고 나서 다음 sosreport
명령어를 실행합니다.
sudo sos report --all-logs --batch --tmp-dir=/var
다른 디렉터리를 --tmp-dir
옵션에 전달하여 보고서가 저장된 디렉터리를 변경할 수 있습니다. 인스턴스에서 /etc/sos.conf
를 편집하여 명령어 기본 동작을 변경할 수도 있습니다.
출력은 --tmp-dir
옵션을 사용하여 지정한 디렉터리의 .tar.xz
파일에 저장됩니다. .tar.xz
파일의 위치와 체크섬은 STDOUT에 표시됩니다.
Your sosreport has been generated and saved in:
/var/sosreport-cos-20181106231224.tar.xz
The checksum is: 5a8b97c6020346a688254c8b04ef86ec
수집된 데이터 보기
이 보고서는 root
이 소유하고 있으므로 다른 사용자가 읽을 수 없습니다. 다음 명령어를 사용하여 소유자를 현재 사용자로 변경하고 읽을 수 있게 하고, 전 세계에서 읽을 수 있게 하지 마세요.
TARBALL=[PATH/TO/TARBALL] sudo chown $(whoami) $TARBALL chmod +r $TARBALL
그런 다음 노드에서 보고서의 내용을 보려면 아래 명령어를 실행하여 추출할 수 있습니다.
tar xvf $TARBALL
개별 보고서 파일은 이제 .tar.xz
과 동일한 위치에 있는 디렉터리에서 사용 가능합니다. less
과 같은 명령어를 사용하여 로그를 보거나 grep
과 같은 명령어를 사용하여 정보를 찾을 수 있습니다.
보고서 다운로드
로컬 시스템으로 보고서를 다운로드하려면 gcloud compute scp
명령어를 사용하세요.
gcloud compute scp $(whoami)@[INSTANCE_NAME]:[PATH/TO/FILE] [LOCAL/PATH/TO/DIRECTORY]