AWS CloudShell 문제 해결 - AWS CloudShell

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS CloudShell 문제 해결

를 사용하는 동안 셸 명령줄 인터페이스를 사용하여 AWS CloudShell 주요 작업을 CloudShell 시작하거나 수행할 때와 같은 문제가 발생할 수 있습니다. 이 장에서는 일반적으로 접할 수 있는 문제를 해결하는 방법을 설명하겠습니다.

에 대한 다양한 질문에 대한 CloudShell 답변은 AWS CloudShellFAQ를 참조하십시오. AWS CloudShell 토론 포럼에서 답을 검색하고 질문을 올릴 수도 있습니다. 이 포럼에 들어갈 때 AWS에 로그인해야 할 수 있습니다. 또한 직접 당사에 문의할 수도 있습니다.

오류 해결

다음 색인에 있는 오류를 접한 경우, 아래 해결 방법에 따라 오류를 해결할 수 있습니다.

환경을 시작할 수 없음. 다시 시도하려면 작업, 재시작을 선택하여 브라우저를 새로고침하거나 재시작합니다 AWS CloudShell

문제: AWS CloudShell 에서 시작하려고 하면 IAM 관리자로부터 필요한 권한을 받은 후 브라우저를 새로 고치거나 다시 시작한 후에도 액세스가 거부됩니다. AWS Management Console CloudShell

해결 방법: AWS지원에 문의하세요.

(맨 위로 이동)

환경을 시작할 수 없음. 필요한 권한이 없습니다. IAM 관리자에게 AWS CloudShell 액세스 권한을 요청합니다.

문제: AWS Management Console에서 AWS CloudShell을(를) 시작하려고 하면 액세스가 거부되고 필수 권한이 없다는 메시지가 표시됩니다.

원인: AWS CloudShell 액세스 시 사용하는 IAM 자격 증명에 필수 IAM 권한이 없습니다.

해결 방법: IAM 관리자에게 필수 권한을 요청하세요. 연결된 AWS 관리형 정책 (AWSCloudShellFullAccess) 또는 내장된 인라인 정책을 추가하여 이 작업을 수행할 수 있습니다. 자세히 알아보려면 IAM 정책을 통한 AWS CloudShell 액세스 및 사용 관리의 내용을 참조하세요.

(맨 위로 이동)

AWS CloudShell 명령줄에 액세스할 수 없음

문제: 컴퓨팅 환경에서 사용하는 파일을 수정한 후, AWS CloudShell에서 명령줄에 액세스할 수 없습니다.

해결 방법: .bashrc 또는 다른 파일을 잘못 수정하여 액세스 권한을 잃은 경우, 홈 디렉터리 삭제를 통해 AWS CloudShell을(를) 기본 설정으로 복원시키면 됩니다.

(맨 위로 이동)

외부 IP 주소를 ping할 수 없음

문제: 명령줄에서 ping 명령(예: ping amazon.com)을 실행하면 다음 메시지가 나타납니다.

ping: socket: Operation not permitted

원인: ping 유틸리티는 인터넷 제어 메시지 프로토콜(ICMP)을 사용하여 에코 요청 패킷을 대상 호스트로 보냅니다. 대상에서 응답할 때까지 에코를 기다립니다. AWS CloudShell에서는 ICMP 프로토콜이 활성화되지 않으므로, ping 유틸리티는 쉘 컴퓨팅 환경에서 작동하지 않습니다.

해결 방법: 에서는 AWS CloudShell ICMP가 지원되지 않으므로 다음 명령을 실행하여 Netcat을 설치할 수 있습니다. Netcat은 TCP 또는 UDP를 사용하여 네트워크 연결을 읽고 쓸 수 있는 컴퓨터 네트워킹 유틸리티입니다.

sudo yum install nc nc -zv www.amazon.com 443

(맨 위로 이동)

터미널 준비 시 문제가 발생했습니다.

문제: Microsoft Edge 브라우저로 AWS CloudShell에 액세스하려고 하면 쉘 세션을 시작할 수 없고 브라우저에 오류 메시지가 표시됩니다.

원인: AWS CloudShell은(는) 이전 버전 Microsoft Edge와 호환되지 않습니다. AWS CloudShell에 액세스하려면 지원되는 브라우저의 최신 네 개 주요 버전을 사용해야 합니다.

해결 방법: Microsoft 사이트에서 최신 버전 Edge 브라우저를 설치하세요.

(맨 위로 이동)

에서 화살표 키가 제대로 작동하지 않음 PowerShell

문제: 정상 작동 중에는 화살표 키로 명령줄 인터페이스를 탐색하고 명령 이력을 앞뒤로 스캔할 수 있습니다. 하지만 특정 버전의 PowerShell AWS CloudShell on에서 화살표 키를 누르면 문자가 잘못 출력될 수 있습니다.

원인: 화살표 키가 문자를 잘못 출력하는 상황은 Linux에서 실행되는 PowerShell 7.2.x 버전에서 알려진 문제입니다.

해결 방법: 화살표 키의 동작을 수정하는 이스케이프 시퀀스를 제거하려면 PowerShell 프로필 파일을 편집하고 변수를 로 설정하십시오. $PSStyle PlainText

  1. AWS CloudShell 명령줄에 다음 명령을 입력하여 파일을 생성합니다.

    vim ~/.config/powershell/Microsoft.PowerShell_profile.ps1
    참고

    이미 PowerShell 로그인했다면 다음 명령을 사용하여 편집기에서 프로필 파일을 열 수도 있습니다.

    vim $PROFILE
  2. 편집기에서 파일의 기존 텍스트 끝으로 이동한 다음 i를 눌러 삽입 모드로 전환한 후 다음 명령문을 추가합니다.

    $PSStyle.OutputRendering = 'PlainText'
  3. 편집한 후 Esc을(를) 눌러 명령 모드로 들어갑니다. 그리고 다음 명령을 입력하여 파일을 저장하고 편집기를 종료합니다.

    :wq
참고

변경 사항은 다음에 시작할 때 적용됩니다 PowerShell.

(맨 위로 이동)

지원되지 않는 웹 소켓으로 인해 세션이 시작되지 않습니다. CloudShell

문제: AWS CloudShell을(를) 시작하려고 하면 Failed to open sessions : Timed out while opening the session 메시지가 반복적으로 표시됩니다.

원인: 프로토콜에 CloudShell 따라 다릅니다. WebSocket 프로토콜에 따라 웹 브라우저와 웹 브라우저 간에 양방향 대화식 통신이 가능합니다. AWS CloudShell 사설망에서 브라우저를 사용하는 경우 프록시 서버와 방화벽을 통해 인터넷에 안전하게 액세스할 수 있을 수 있습니다. WebSocket 통신은 일반적으로 프록시 서버를 통해 문제 없이 이루어질 수 있습니다. 하지만 프록시 서버가 제대로 작동하지 않는 경우도 WebSockets 있습니다. 이 문제가 발생하면 셸 세션을 시작할 CloudShell 수 없고 결국 연결 시도 시간이 초과됩니다.

해결 방법: 지원되지 않는 WebSockets 문제가 아닌 다른 문제로 인해 연결 시간 초과가 발생할 수 있습니다. 이런 경우에는 먼저 CloudShell 명령줄 인터페이스가 있는 브라우저 창을 새로 고치십시오.

새로고침한 후에도 시간 초과 오류가 계속 발생하는 경우 프록시 서버 설명서를 참조하세요. 또한 프록시 서버가 Web Socket을 허용하도록 구성되어 있는지 확인하세요. 아니면 네트워크 시스템 관리자에게 문의하세요.

참고

특정 URL을 허용 목록에 넣어 세분화된 권한을 정의하고자 한다고 가정해 보겠습니다. AWS Systems Manager세션에서 입력 전송 및 출력 수신을 위한 WebSocket 연결을 여는 데 사용하는 URL의 일부를 추가할 수 있습니다. AWS CloudShell 명령은 해당 Systems Manager 세션으로 전송됩니다.

Systems Manager에서 StreamUrl 사용하는 이 형식의 형식은 다음과 같습니다 wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output).

리전은 AWS Systems Manager에서 지원되는 AWS 리전에 대한 리전 식별자를 나타냅니다. 예를 들어, us-east-2은(는) 미국 동부(오하이오) 리전의 지역 식별자입니다.

세션 ID는 특정 Systems Manager 세션이 성공적으로 시작된 생성되므로 URL 허용 목록을 업데이트할 떄만 wss://ssmmessages.region.amazonaws.com을(를) 지정할 수 있습니다. 자세한 내용은 AWS Systems ManagerAPI 참조의 StartSession작업을 참조하십시오.

(맨 위로 이동)

AWSPowerShell.NetCore 모듈을 가져올 수 없음

문제: 를 가져올 때 AWSPowerShell. NetCore모듈을 PowerShell by로 Import-Module -Name AWSPowerShell.NetCore 가져오면 다음과 같은 오류 메시지가 나타납니다.

임포트 모듈: 지정된 모듈 '. AWSPowerShell NetCore어떤 모듈 디렉터리에도 유효한 모듈 파일이 없어서 '이 (가) 로드되지 않았습니다.

원인: AWSPowerShell.NetCore 모듈이 AWS CloudShell에서 서비스별 AWS.Tools 모듈로 교체되었습니다.

해결 방법: 명시적 가져오기 명령문이 더 이상 필요하지 않거나 관련 서비스별 AWS.Tools 모듈로 변경해야 할 수 있습니다.

  • 대부분의 경우 .Net 형식을 사용하지 않는 한 명시적인 가져오기 명령문은 필요하지 않습니다. 다음은 가져오기 명령문의 예제입니다.

    • Get-S3Bucket

    • (Get-EC2Instance).Instances

  • .Net 유형을 사용하는 경우, 서비스 수준 모듈(AWS.Tools.<Service>)을 가져오기 하세요. 다음은 구문의 예제입니다.

    Import-Module -Name AWS.Tools.EC2 $InstanceTag = [Amazon.EC2.Model.Tag]::new("Environment","Dev")
    Import-Module -Name AWS.Tools.S3 $LifecycleRule = [Amazon.S3.Model.LifecycleRule]::new()

자세한 정보는 버전 4 공지(AWS Tools for PowerShell)에서 확인하세요.

(맨 위로 이동)

를 사용할 때 Docker가 실행되지 않습니다. AWS CloudShell

문제: 사용 시 Docker가 제대로 실행되지 않습니다. AWS CloudShell 다음과 같은 오류 메시지가 나타납니다. docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

해결 방법: 환경을 다시 시작해 보십시오. 이 오류 메시지는 지원되지 않는 AWS CloudShell 지역에서 Docker를 실행할 때 발생할 수 있습니다. 지원되는 지역에서 Docker를 실행하고 있는지 확인하세요. Docker 컨테이너 사용을 지원하는 지역에 대한 자세한 내용은 Docker 지역을 참조하세요. AWS CloudShell

Docker의 디스크 공간이 부족합니다.

문제: 다음과 같은 오류 메시지가 나타납니다. ERROR: failed to solve: failed to register layer: write [...]: no space left on device

원인: Dockerfile이 사용 가능한 디스크 공간을 초과했습니다. AWS CloudShell 이는 개별 이미지가 크거나 기존 Docker 이미지가 너무 많기 때문일 수 있습니다.

해결 방법: df -h 를 실행하여 디스크 사용량을 확인합니다. sudo du -sh /folder/folder1실행하여 크기가 클 것으로 생각되는 특정 폴더의 크기를 확인하고 다른 파일을 삭제하여 공간을 확보해 보세요. 한 가지 옵션은 를 실행하여 사용하지 않는 Docker 이미지를 제거하는 것입니다. docker rmi Docker의 환경 공간이 제한되어 있다는 점에 유의해야 합니다. Docker에 대한 자세한 내용은 Docker 설명서 가이드를 참조하세요.

docker push시간이 초과되어 계속 재시도하고 있습니다.

문제: 실행 시간이 docker push 초과되어 계속 재시도해도 성공하지 못합니다.

원인: 권한 누락, 잘못된 리포지토리로 푸시 또는 인증 부족으로 인해 발생할 수 있습니다.

해결 방법: 이 문제를 해결하려면 올바른 저장소로 푸시해야 합니다. 제대로 docker login 인증하려면 실행하십시오. Amazon ECR 리포지토리로 푸시하는 데 필요한 모든 권한이 있는지 확인하십시오.