1. Cloud9 IDE 환경 구성

Update: 2022-10-27 / 20min

Cloud9 환경 구성

Cloud9 소개

AWS Cloud9은 브라우저만으로 코드를 작성, 실행 및 디버깅할 수 있는 클라우드 기반 IDE(통합 개발 환경)입니다. 코드 편집기, 디버거 및 터미널이 포함되어 있습니다. Cloud9은 JavaScript, Python, PHP를 비롯하여 널리 사용되는 프로그래밍 언어를 위한 필수 도구가 사전에 패키징되어 제공되므로, 새로운 프로젝트를 시작하기 위해 파일을 설치하거나 개발 머신을 구성할 필요가 없습니다. Cloud9 IDE는 클라우드 기반이므로, 인터넷이 연결된 머신을 사용하여 사무실, 집 또는 어디서든 프로젝트 작업을 할 수 있습니다. 또한, Cloud9은 서버리스 애플리케이션을 개발할 수 있는 원활한 환경을 제공하므로 손쉽게 서버리스 애플리케이션의 리소스를 정의하고, 디버깅하고, 로컬 실행과 원격 실행 간에 전환할 수 있습니다. Cloud9에서는 개발 환경을 팀과 신속하게 공유할 수 있으므로 프로그램을 연결하고 서로의 입력 값을 실시간으로 추적할 수 있습니다.

1. Cloud9 IDE 생성

AWS 서비스에서 Cloud9을 선택하고, "Environments"를 설정합니다.

Cloud9 의 이름과 Description을 설정합니다

2. Cloud9 구성 설정

인스턴스 타입과 Cost-Saving Setting을 변경합니다.

  • Instance Type - Other Instance Type - t3.large

  • Cost-Saving setting - Never

Cloud9 하단의 설정 메뉴 중에 Network Setting은 변경하지 않으면, 자동으로 VPC Default로 설정되며 Cloud9 인스턴스는 해당 Default VPC의 public subnet에 자동으로 설치됩니다.

  • Crete Environment를 선택하고 Cloud9을 생성합니다.

  • 1~2분 후에 브라우저에서 Cloud9 콘솔을 확인 할 수 있습니다.

Cloud9 터미널에 접속하여, EKS Workshop 터미널 IDE 환경을 살펴봅니다.

3. Cloud9 에 패키지 설치

Cloud9 터미널에 아래 명령을 복사해서 붙여 넣습니다.

AWS 명령줄 인터페이스(CLI)는 AWS 서비스를 관리하는 통합 도구입니다. 도구 하나만 다운로드하여 구성하면 여러 AWS 서비스를 명령줄에서 제어하고 스크립트를 통해 자동화할 수 있습니다.

# AWS CLI Upgrade
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
source ~/.bashrc
aws --version
# AWS CLI 자동완성 설치 
which aws_completer
export PATH=/usr/local/bin:$PATH
source ~/.bash_profile
complete -C '/usr/local/bin/aws_completer' aws

4. Kubectl 설치

EKS를 위한 kubectl 바이너리를 다운로드합니다. Kubernetes 버전 1.23 출시부터 공식적으로 Amazon EKS AMI에는 containerd가 유일한 런타임으로 포함됩니다. Kubernetes 버전 1.18–1.21은 Docker를 기본 런타임으로 사용합니다.

kubectl 바이너리 버전은 1.22.6 설치합니다. 추가로 바이너리에 실행권한을 적용하고, 자동완성을 설치 합니다.

cd ~
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.22.6/bin/linux/amd64/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
source <(kubectl completion bash)
echo "source <(kubectl completion bash)" >> ~/.bashrc
kubectl version --short --client

5. 기타 유틸리티 설치

GNU gettext, jq, bash 자동완성등을 설치 합니다.

sudo yum -y install jq gettext bash-completion moreutils
for command in kubectl jq envsubst aws
  do
    which $command &>/dev/null && echo "$command in path" || echo "$command NOT FOUND"
  done
  

K9s는 쿠버네티스 클러스터와 상호작용을 통해 직관적인 UI 터미널을 제공합니다. 이 도구를 통해서 쿠버네티스 자원들을 쉽게 탐색하고 관리할 수 있도록 도움을 줍니다.(참조 - https://github.com/derailed/k9s)

K9s 설치를 아래와 같이 진행합니다.

K9S_VERSION=v0.26.7
curl -sL https://github.com/derailed/k9s/releases/download/${K9S_VERSION}/k9s_Linux_x86_64.tar.gz | sudo tar xfz - -C /usr/local/bin 

설치가 완료되면 정상 작동하는지 확인합니다. K8s설치를 진행하지 않았기 때문에 K9s 화면에는 아직 노드와 포드의 상태를 확인할 수 없습니다.

k9s

Last updated