AWS CloudShell을 사용하여 Amazon EKS 작업 환경 설정
7614 단어 ekskubernetesaws
소개
AWS Cloud Shell은 AWS re:Invent 2020의 Werner Vogels 기조 연설에서 발표되었습니다.
🚀 AWS CloudShell – AWS 리소스에 대한 명령줄 액세스
https://aws.amazon.com/jp/blogs/aws/aws-cloudshell-command-line-access-to-aws-resources/
AWS CloudShell은 AWS 관리 콘솔에서 직접 실행할 수 있는 브라우저 기반 셸입니다.
셸은 Bash, PowerShell, Z 셸을 사용할 수 있으며 AWS CLI 및 기타 주요 개발 언어를 지원하는 도구와 함께 사전 구성되어 제공됩니다.
사전 설정 도구는 다음 문서에 설명되어 있습니다.
AWS CloudShell 컴퓨팅 환경: 사양 및 소프트웨어
https://docs.aws.amazon.com/cloudshell/latest/userguide/vm-specs.html
예를 들어 kubectl이 설치되지 않았습니다.
Amazon EKS를 위한 작업 환경을 직접 준비합시다.
셸 환경에서 추가 소프트웨어 설치가 지원되나요?
예, 하지만 사용자가 관리해야 합니다. (책임 분담 모델😎)
설정
관리 콘솔에서 아이콘을 클릭하기만 하면 CloudShell이 시작됩니다.
설치 디렉토리는
$HOME/.local/bin
로 설정됩니다.이는 세션 간에 유지되는 영구 스토리지가
$HOME
이기 때문입니다. (자세한 내용은 이 기사의 후반부를 참조하십시오.)# Create directory
mkdir -p $HOME/.local/bin
cd $HOME/.local/bin
# kubectl
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.13/bin/linux/amd64/kubectl
chmod +x kubectl
# Create $HOME/.kube/config
aws eks update-kubeconfig --name <YOUR_CLUSTER_NAME>
# eksctl
curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
sudo mv /tmp/eksctl $HOME/.local/bin
# helm
export VERIFY_CHECKSUM=false
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
sudo mv /usr/local/bin/helm $HOME/.local/bin
yum으로 설치한 패키지는 영구 저장소(
$HOME
)에 배치할 수 없으므로 각각의 새 세션에 대해 설치해야 합니다.CloudShell을 시작할 때 자동으로 설치하도록
.bash_profile
에 명령을 작성할 수 있습니다.kubectl 완성을 사용하고 싶어서 bash-completion을 설치했습니다.
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
# Install at startup
sudo yum install -y bash-completion > /dev/null 2>&1
kubectl 완료 구성은 영구 스토리지에 저장할 수 있습니다.
kubectl completion bash > $HOME/.bash_completion
CloudShell에 대한 참고 사항
영구 저장
CloudShell 액세스 권한
모든 서비스와 마찬가지로 대상 IAM 사용자/역할에 CloudShell 액세스 권한을 명시적으로 부여해야 합니다.
AWSCloudShellFullAccess AWS 관리형 정책을 사용하는 것이 가장 쉽지만 CloudShell을 통한 파일 업로드/다운로드를 제한하려는 경우 다음과 같은 사용자 지정 정책을 사용할 수 있습니다.
{
"Version": "2012-10-17",
"Statement": [{
"Sid": "CloudShellUser",
"Effect": "Allow",
"Action": [
"cloudshell:*"
],
"Resource": "*"
}, {
"Sid": "DenyUploadDownload",
"Effect": "Deny",
"Action": [
"cloudshell:GetFileDownloadUrls",
"cloudshell:GetFileUploadUrls"
],
"Resource": "*"
}]
}
CloudShell 내에서 AWS 서비스에 액세스할 수 있는 권한.
AWS Management 콘솔에 로그인하는 데 사용한 IAM 자격 증명을 자동으로 사용합니다.
이는 운영 중인 IAM 사용자/역할이 대상 AWS 서비스에 액세스할 수 있는 명시적 권한이 있어야 함을 의미합니다.
참조
AWS CloudShell - 사용 설명서
https://docs.aws.amazon.com/cloudshell/latest/userguide/welcome.html
Reference
이 문제에 관하여(AWS CloudShell을 사용하여 Amazon EKS 작업 환경 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/aws-builders/setting-up-a-working-environment-for-amazon-eks-with-aws-cloudshell-1nn7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)