728x90
에러 현상 및 원인
AWS CLI를 사용해 ECS 컨테이너에서 execute-command 명령어를 실행하려 할 때, 아래와 같은 에러가 발생했습니다.
SessionManagerPlugin is not found. Please refer to SessionManager Documentation here: http://docs.aws.amazon.com/console/systems-manager/session-manager-plugin-not-found
이 에러는 AWS Session Manager Plugin이 설치되지 않았거나,
CLI에서 플러그인을 인식하지 못하는 경우 발생합니다.
Session Manager Plugin은 AWS CLI가 컨테이너에 안전하게 접속할 수 있도록 지원합니다.
트러블슈팅 절차
1. 에러 원인 분석
Session Manager Plugin이 설치되지 않았거나, 설치 경로가 잘못 설정된 경우 CLI에서 플러그인을 찾을 수 없습니다.
다음 두 가지를 점검해야 합니다:
- Session Manager Plugin이 설치되었는가?
- 환경 변수 $PATH에 플러그인의 바이너리 경로가 포함되었는가?
2. 해결 과정
1) 플러그인 다운로드 및 설치
아래 명령어를 사용해 최신 Session Manager Plugin을 다운로드하고 설치했습니다.
curl "https://s3.amazonaws.com/session-manager-downloads/plugin/latest/mac/sessionmanager-bundle.zip" -o "sessionmanager-bundle.zip"
unzip sessionmanager-bundle.zip
sudo ./sessionmanager-bundle/install -i /usr/local/sessionmanagerplugin -b /usr/local/bin/session-manager-plugin
- -i /usr/local/sessionmanagerplugin: 플러그인을 설치할 디렉토리 지정
- -b /usr/local/bin/session-manager-plugin: 실행 파일을 $PATH에 등록하기 위한 심볼릭 링크 생성
설치 확인:
설치가 완료되면 아래와 같은 메시지가 출력됩니다.
Installation successful!
2) 설치 확인
정상적으로 설치되었는지 확인하려면 다음 명령어를 실행합니다.
session-manager-plugin --version
3) CLI 환경 점검
Session Manager Plugin이 $PATH에 포함되어 있어야 AWS CLI가 이를 찾을 수 있습니다.
echo $PATH
위 명령어에서 /usr/local/bin이 포함되어 있는지 확인하세요.
만약 포함되지 않았다면:
.bashrc 또는 .zshrc 파일을 수정하여 환경 변수를 추가합니다.
export PATH=$PATH:/usr/local/bin
source ~/.zshrc # or source ~/.bashrc
3. 실행 재시도
이제 execute-command를 다시 실행하면 정상적으로 작동합니다.
aws ecs execute-command \
--cluster {cluster_name} \
--task {task_arn_address} \
--container airflow-worker \
--interactive \
--command "/bin/bassh"
컨테이너 내부로 접속되는 것을 확인할 수 있습니다.
트러블슈팅 요약
- 문제: AWS CLI에서 Session Manager Plugin이 설치되지 않거나 인식되지 않아 명령어 실행 실패
- 해결 방법:
- 플러그인 설치 (최신 버전 다운로드 및 경로 설정)
- $PATH 환경 변수 확인 및 수정
- 설치 확인 및 명령 재실행
728x90
'IT_Engineer > DevOps_Cloud' 카테고리의 다른 글
[AWS] AWS 기초 #2. AWS ECS와 Fargate: ECS와 EC2, Fargate의 관계 (1) | 2024.11.27 |
---|---|
[AWS] AWS 기초 #1. AWS ECS와 Fargate: 컨테이너 오케스트레이션의 시작 (0) | 2024.11.26 |
[Kube] Kubeflow, WHO ARE YOU? (0) | 2022.11.02 |
[Docker] Docker Hub에 생성한 레파지토리 삭제 (2) | 2022.02.22 |
[K8S] Namespace Terminating 상태 (2) | 2021.01.13 |