알려진 문제

이 페이지는 Compute Engine을 사용하는 동안 발생할 수 있는 알려진 문제를 설명합니다.

Linux VM 인스턴스의 알려진 문제

다음 알려진 문제는 Linux 이미지와 관련이 있습니다.

패키지 업데이트 시 GPG 오류: EXPKEYSIG 3746C208A7317B0F 발생

로컬 워크스테이션을 비롯하여 Debian 및 Ubuntu 기반 시스템에서 다음 예시와 비슷한 오류가 발생할 수 있습니다.

W: An error occurred during the signature verification.
The repository is not updated and the previous index files will be used.
GPG error: http://packages.cloud.google.com/apt cloud-sdk-stretch InRelease:
The following signatures were invalid: EXPKEYSIG 3746C208A7317B0F
Google Cloud Packages Automatic Signing Key <gc-team@google.com>

이 오류가 발생하면 다음 항목을 포함하여 일부 Google Cloud Platform 도구의 최신 업데이트를 다운로드하지 못합니다.

이 오류를 해결하려면 다음 명령어를 실행하여 https://packages.cloud.google.com에서 유효한 최신 apt-key.gpg 키를 가져옵니다.

curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -

또는 다음 이미지 버전을 사용하여 인스턴스를 다시 만드는 경우 Debian 또는 Ubuntu 이미지가 실행되는 Compute Engine VM 인스턴스에서 최신 키를 가져올 수 있습니다.

  • 이미지 프로젝트 debian-cloud:
    • debian-9-stretch-v20180401 또는 이미지 계열 debian-9
    • debian-8-jessie-v20180401 또는 이미지 계열 debian-8
  • 이미지 프로젝트 ubuntu-os-cloud:
    • ubuntu-1710-artful-v20180315 또는 이미지 계열 ubuntu-1710
    • ubuntu-1604-xenial-v20180323 또는 이미지 계열 ubuntu-1604-lts
    • ubuntu-1404-trusty-v20180308 또는 이미지 계열 ubuntu-1404-lts

Red Hat Enterprise Linux 7 및 CentOS 7 읽기 전용 루트 파일 시스템 문제

공개 이미지 rhel-7-v20170719 및 이전 버전 또는 centos-7-v20170719 및 이전 버전이 실행되는 VM 인스턴스는 읽기 전용 모드로 마운트된 루트 파일 시스템으로 부팅할 수 있습니다. 루트 파일 시스템에 대한 쓰기 권한이 필요한 앱, 데몬 또는 스크립트는 실패합니다.

영향을 받는 공개 이미지를 사용하는 실행 중인 인스턴스는 다시 부팅하거나 다시 시작하지 마세요. 다시 부팅하거나 시작할 경우 읽기 전용 모드로 남게 됩니다. 인스턴스가 이미 읽기 전용 모드에서 중단된 경우 원격으로 루트 파일 시스템을 읽기/쓰기 모드로 복원한 후 문제를 해결할 수 있습니다.

영향을 받는 인스턴스 식별:

다음 gcloud compute disks list 명령을 사용하여 영향을 받았을 가능성이 있는 인스턴스를 식별합니다.

RHEL 7:

gcloud compute disks list --filter="sourceImage ~ rhel-7-v201[4-6].* OR sourceImage ~ rhel-7-v20170[1-7].*" --uri

CentOS 7:

gcloud compute disks list --filter="sourceImage ~ centos-7-v201[4-6].* OR sourceImage ~ centos-7-v20170[1-7].*" --uri

이러한 디스크가 인스턴스에 연결되면 해당 인스턴스의 문제를 해결할 수 있습니다. 영향을 받은 인스턴스를 수정하는 프로세스는 인스턴스를 만드는 데 사용한 이미지 버전에 따라 다릅니다.

rhel-7-v20160418rhel-7-v20170719 사이의 RHEL 7 이미지 또는 centos-7-v20160418centos-7-v20170719 사이의 CentOS 7 이미지를 사용하여 만든 인스턴스:

이 인스턴스가 자동 업데이트를 사용하는 경우 yum-cron은 수정된 패키지를 자동으로 설치하고 /etc/fstab 파일에서 잘못된 마운트 옵션을 제거합니다. 인스턴스에 자동 업데이트가 사용되도록 설정되지 않은 경우 다음 프로세스를 사용하여 인스턴스를 수정할 수 있습니다.

  1. SSH를 사용하여 인스턴스에 연결합니다. 연결이 실패하는 경우 인스턴스가 읽기 전용 모드에서 중단될 수 있습니다. 하지만 복구를 시도할 수 있습니다. 이전에 SSH를 통해 영향을 받은 인스턴스에 연결했다면 공개 SSH 키가 루트 파일 시스템에 이미 있는 것이며 계속 작동할 것입니다. ssh를 통해 원격 명령을 실행하여 파일 시스템을 rw 모드에서 다시 마운트하세요. 예를 들어 다음 gcloud 명령어를 사용하여 루트 파일 시스템을 다시 마운트할 수 있습니다.

    gcloud compute ssh [INSTANCE_NAME] --command "sudo mount -o remount,rw /dev/sda1 /"
    

    파일 시스템이 읽기/쓰기 모드로 다시 마운트된 후에는 SSH를 통해 인스턴스에 연결합니다.

  2. sudo yum -y update를 실행하여 수정 프로그램이 포함된 gce-disk-expand 패키지를 포함하여 설치된 모든 패키지를 업데이트합니다.

이제 루트 파일 시스템을 읽기 전용 모드로 마운트하지 않고 인스턴스를 재부팅할 수 있습니다.

rhel-7-v20160418 이전에 만든 RHEL 7 이미지 또는 centos-7-v20160418 이전에 만든 CentOS 7 이미지를 사용하여 만든 인스턴스:

  1. SSH를 사용하여 인스턴스에 연결합니다. 연결이 실패하는 경우 인스턴스가 읽기 전용 모드에서 중단될 수 있습니다. 하지만 복구를 시도할 수 있습니다. 이전에 SSH를 통해 영향을 받은 인스턴스에 연결했다면 공개 SSH 키가 루트 파일 시스템에 이미 있는 것이며 계속 작동할 것입니다. ssh를 통해 원격 명령을 실행하여 파일 시스템을 rw 모드에서 다시 마운트하세요. 예를 들어 다음 gcloud 명령어를 사용하여 루트 파일 시스템을 다시 마운트할 수 있습니다.

    gcloud compute ssh [INSTANCE_NAME] --command "sudo mount -o remount,rw /dev/sda1 /"
    

    파일 시스템이 읽기/쓰기 모드로 다시 마운트된 후에는 SSH를 통해 인스턴스에 연결합니다.

  2. /etc/fstab 파일을 수정하고 해당 파일의 모든 barrier=1 마운트 옵션을 제거합니다. default 마운트 옵션은 루트 파일 시스템 항목에 대해 설정한 유일한 마운트 옵션이어야 합니다. 다음 명령어를 사용하여 이러한 잘못된 마운트 옵션을 수정할 수 있습니다.

    sudo sed -i 's/defaults,barrier[^ ,]*/defaults/' /etc/fstab
    

    barrier=1 마운트 옵션을 삭제하면 /etc/fstab 파일의 루트 파일 시스템 항목이 다음 예시와 유사해야 하지만 UUID에는 다른 값을 사용해야 합니다.

    UUID=b5e54172-67e3-4d52-95f4-4314e71b25fd / xfs defaults 0 0
    

이제 루트 파일 시스템을 읽기 전용 모드로 마운트하지 않고 인스턴스를 재부팅할 수 있습니다.

CentOS 이미지 v20131120은 iptable이 기본적으로 켜져 있도록 변경됨

CentOS 6 이미지 v20131120 릴리스 centos-6-v20131120에는 iptable이 기본적으로 켜지도록 하는 브레이킹 체인지가 있습니다. 이로 인해 관련 방화벽 규칙 리소스에서 연결을 허용하더라도 외부 트래픽이 centos-6-v20131120을 실행 중인 CentOS 인스턴스에 도달하지 못합니다.

이 문제를 해결하려면 방화벽 규칙을 사용하여 트래픽을 허용할 뿐 아니라 원하는 연결을 허용하도록 iptable을 사용하지 않도록 설정하거나 업데이트해야 합니다. iptable을 사용하지 않도록 설정하려면 다음 명령어를 실행하세요.

# Save your iptable settings
user@centos-instance:~$ sudo service iptables save
# Stop the iptables service
user@centos-instance:~$ sudo service iptables stop
# Disable iptables on start up
user@centos-instance:~$ sudo chkconfig iptables off

Google에서 제공한 이미지에서 안정적인 Debian 및 CentOS 커널의 ext4/scsi 드라이버에 알려진 버그가 있음

centos-6-v20131120 및 debian-7-wheezy-v20131120 이미지에 있는 알려진 ext4 버그로 인해 지속적으로 과도한 디스크 부하가 발생할 경우 메모리가 누수되고 결과적으로 가상 머신 인스턴스가 중단될 수 있습니다. 자세한 내용은 Linux 커널 메일링 리스트에서 ext4 초과 정지 시간에 대한 질문 스레드를 참조하세요.

인스턴스 이름이 32자보다 길 경우 다양한 UNIX 도구에 문제가 발생할 수 있음

보고된 날짜: 2012년 6월

인스턴스 이름은 63자까지 허용되지만 이름이 32자보다 길면 부팅 중에 실행될 수 있는 도구를 비롯한 일부 도구가 불안정해질 수 있습니다. 이 문제를 해결하려면 32자보다 짧은 인스턴스 이름을 선택하세요.

OS 로그인을 사용하는 인스턴스가 연결 후에 로그인 메시지를 반환함

OS 로그인을 사용하는 일부 인스턴스에서 연결이 설정된 후에 다음과 같은 오류 메시지가 표시될 수 있습니다.

/usr/bin/id: cannot find name for group ID 123456789

이 오류 메시지를 무시하세요.

Windows VM 인스턴스의 알려진 문제

다음 알려진 문제는 Windows 이미지와 관련이 있습니다.

  • Windows 인스턴스가 NVMe 인터페이스를 사용하여 로컬 SSD와 연결할 수 있지만, Windows상의 NVMe는 베타 지원 상태이므로 Linux 인스턴스와 동일한 성능이 보장되지 않습니다.
  • Windows 2008 R2에서 Python 2.7.9 이상을 설치하려면 Visual C++가 필요합니다. Python 2.7.8이 이러한 종속성을 방지하지만 최신 버전을 설치하는 것이 좋습니다.
  • Compute Engine은 아직 IPv6를 지원하지 않습니다. Windows 인스턴스에서 옵션을 선택하여 IPv6를 사용하도록 설정해도 설정이 무시됩니다.
  • 인스턴스를 만든 후에는 즉시 연결할 수 없습니다. 모든 새 Windows 인스턴스는 시스템 준비(sysprep) 도구를 사용하여 인스턴스를 설정하며 이 설정이 완료되는 데는 5~10분 정도 걸릴 수 있습니다.
  • Windows Server 이미지는 네트워크가 kms.windows.googlecloud.com에 연결되어 있어야 활성화될 수 있으며, 30일 이내에 최초 인증하지 않으면 작동이 중지됩니다. KMS로 활성화한 소프트웨어는 180일마다 재활성화해야 하지만 KMS에서 7일마다 재활성화를 시도합니다. 외부 IP가 있는 Windows 인스턴스는 정기적으로 인증할 수 있습니다.
  • 커널 소프트웨어가 에뮬레이션되지 않은 MSR(모델 특정 레지스터)에 액세스하면 GPF(일반적인 보호 결함)가 생성되며 이로 인해 게스트 운영체제에 따라 시스템 장애가 발생할 수 있습니다.
이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Compute Engine 문서