Console, CLI, SDK, API
에 대해 알아보도록 하자!
이런 것들은 컴퓨터를 제어하는 방법들이다.
EC2
를 생성, 삭제 및 목록 열람 등의 기능을 제공하는 Management Console
이다.
이러한 방식을 GUI
라고 한다.
이 방식의 장점은 익숙하고, 많은 것을 배우지 않아도 사용할 수 있다는 것이다.
Command Line Integerface
의 약자이다.
즉, GUI방식과 다르게 명령어를 입력해서 컴퓨터를 제어하는 방식이다.
$aws ec2 describe-instances
사용하는 방법만 익히면 GUI보다 편리하게 시스템을 제어할 수 있다.
또한, |
를 이용해서 여러 명령어를 한 번에 줄 수 있다.
Software Development Kit
의 약자이다.
프로그래밍을 통해서 지능적이고 섬세한 제어를 할 수 있도록 AWS에서 제공하는 도구이다.
위의 예시 사진은 js
로 아마존의 서비스를 제어하는 코드이다.
ec2.js
의 내용은 AWS
에서 제공하는 sdk
를 자바스크립트로 로드한 후, sdk에서 제공하는 ec2
를 제어하는 명령을 실행시켜서 그 결과를 화면에 출력하는 코드이다.
여러가지 프로그래밍 언어를 이용해서 aws의 인프라를 제어할 수 있게 된 것이다.
Application Programming Interface
의 약자이다. 앞의 SDK와 구분이 잘 가지 않는데, API는 기본적인 명령어이고 이 기본적인 명령어들을 개발자들이 쉽게 사용할 수 있도록 해주는 것이 SDK이긴 하다.
RESTful API
라고 해서, 웹을 통해서 aws의 인프라를 제어하거나 상태를 알아낼 수 있는 수단이다.
위의 사진처럼 저렇게 서버에 접속하면 (뒤에 인증 더 필요함)
위처럼 이러한 정보들을 알려준다.
이를 통해서 제어하는 방식은 어떤 프로그래밍 언어를 사용하더라도 AWS의 인프라를 제어할 수 있게 되는 것이다.
이를 직접 이용하는 것은 쉽지 않기 때문에 공통의 API를 만들어놓고, 각각을 쉽게 사용할 수 있도록 SDK를 만든 것이다.