이 글에서는 아마존 EC2 기반으로 리눅스 서버 환경을 구축하는 내용을 안내합니다.

RAD 스튜디오 10.2 도쿄 버전부터 리눅스 개발을 지원합니다. WebBroker, 데이테스냅, EMS 서버, 소켓 서버 용 테스트 및 서비스에 사용할 수 있습니다.

 

아마존 EC2 기반 윈도우즈 서버 환경 구축하는 내용은 다음 링크를 참고하세요.

 

아마존 EC2

아마존 EC2란?

아마존 EC2는 클라우드 기반으로 서버 인프라를 제공합니다. 웹 페이지를 이용해 필요한 플랫폼과 용량을 선택해 서버 인스턴스를 실행하고 접속해 테스트 및 서비스 할 수 있습니 - 아마존 EC2 자세히보기

 

아마존 EC2를 사용하는 이유

AWS 프리 티어를 이용해 12개월 동안 무료로 체험할 수 있습니다. - AWS 프리 티어 자세히보기

 

이 글에서 다루는 내용은 아래와 같습니다.

  • Ubuntu Server 16.04 LTS 인스턴스 생성
  • 보안설정(필요한 포트번호 오픈)
  • 터미널로 연결
  • 리눅스 개발환경 설정

 

준비

AWS 가입(게정생성)

EC2를 사용하기 위해서는 AWS 계정이 필요합니다.

이미 많은 글들에서 가입 절차를 소개하고 있으니 아래 링크를 참조해 가입하시기 바랍니다.

(참고로 가입 시 마스터 또는 비자 카드가 필요합니다.)

인스턴스 생성

리눅스 서버 인스턴스를 추가하는 과정을 설명합니다.

 

아마존 웹서비스 로그인

 

EC2 서비스 선택

  • 필터에 ec2 입력 후 선택

 

인스턴스 목록 표시

  • 왼쪽 메뉴 중 Instances 항목 선택

 

가까운 지역 선택

  • 상단 우측의 지역을 누르고, 가까운 지역 선택
    (저는 Asia Pacific(Seoul)을 선택했습니다.)

 

새로운 인스턴스 추가

  • [Launch Instance] 버튼 클릭

 

인스턴스 이미지 선택

  • 적합한 항목의 [Select] 버튼 클릭
    (저는 "Ubuntu Server 16.04 LTS (HVM), SSD Volume Type"(64 - bit)를 선택 했습니다.)

 

인스턴스 유형 선택

  • 적합한 인스턴스 유형 선택
  • [Review and Launch] 버튼 클릭

 

내용 확인

  • 내용 확인 후 [Launch] 버튼 클릭
  • 주의 문구는 무시합니다.(보안설정은 뒤에서 다시 진행합니다.)

 

Key Pair 생성 및 다운로드

중요: 해당 키페어 파일(*.pem)은 터미널 접속 시 개인키(*.ppk) 생성에 사용합니다. 해당 파일을 분실하지 않도록 주의하시기 바랍니다.

  • "Create a new key pair" 항목 선택
  • Key pair name 입력
  • [Download key Pair] 버튼 클릭 해 다운로드(*.pem 파일이 다운로드 됩니다.)

 

보안설정

애플리케이션 서버에서 사용할 포트번호를 Inbound 규칙에 추가하는 절차를 설명합니다.

 

인스턴스의 Security Group 확인

  • 인스턴스 목록 항목 중 가장 오른쪽 항목에서 Security Group을 확인합니다.
    (저는 launch-wizard-2 입니다.)

 

 Security Groups 메뉴 선택

  • 왼쪽 메뉴에서 Network & Security > Security Groups 메뉴 클릭

 

Security Group 선택

  • 인스턴스에 설정된 Security Group을 선택합니다.
    (저는 launch-wizard-2을 선택)

 

Inbound 탭에서 Inbound 규칙 수정

  • 아래 탭 중 Inbound 탭 선택
  • [Edit] 버튼 클릭

 

Inbound 규칙 편집

  • [Add Rule] 버튼 클릭
  • 필요한 규칙을 추가합니다.

     

    • EMS 서버, 데이터스냅 HTTP, WebBroker의 경우 "Custom TCP Rule / TCP / 8080" 규칙 추가
    • PAServer(Platform Assistance Server: 원격 디버깅 및 SDK 취득) 포트번호 "64211" 규칙 추가
    • 데이터스냅 TCP/IP의 경우 "Custom TCP Rule / TCP / 211" 규칙 추가
    • 리눅스 상에서 FTP 서비스 이용 시 "1024 - 1048", "20 - 22")" 규칙 추가
    • 기타 서버에서 사용할 포트번호를 추가합니다.
  • [Save] 버튼을 눌러 저장

 

터미널로 연결

리눅스 서버 인스턴스에 터미널을 이용해 연결하는 절차를 안내합니다.

다음 내용은 아마존 웹서비스 도움말을 참고해 작성되었습니다.

 

인스턴스 선택 후 연결(연결 방법 확인)

  • 인스턴스 목록에서 인스턴스 선택
  • [Connect] 버튼 클릭
  • Connect To Your Instance 팝업창 표시

 

 

접속 주소(Public DNS) 확인

  • 4번 단계의 접속 주소(Public DNS) 확인

 

접속에 필요한 소프트웨어 설치

리눅스에 터미널에 접속할 SSH Client와 파일 전송을 위한 SCP(Secure Copy) 프로그램을 아래 링크에서 다운로드 후  설치합니다.

 

개인 키 변환

PuTTY는 위에서 다운로드 받은 키페어 파일(*.pem)을 지원하지 않습니다. PuTTYgen을 통해 PuTTY에서 지원하는 개인 키(*.ppk)로 변환합니다.

  • PuTTYgen을 시작합니다.(시작 > 모든 프로그램 > PuTTY > PuTTYgen 선택)
  • Type of key to generate 에서 RSA를 선택
  • [Load] 버튼을 눌러 키페어파일을 선택(파일 필터를 All Files로 변경 후 선택)
  • [Save private key] 버튼을 누르고 개인 키(*.ppk)를 저장합니다.

 

터미널 접속

PuTTY를 이용해 리눅스 서버 터미널로 접속합니다.

  • PuTTY를 시작합니다.(시작 > 모든 프로그램 > PuTTY > PuTTY 선택)
  • Host Name에 "ubuntu@(접속주소)"를 입력합니다.
    • 기본 계정명은 "ubuntu" 입니다.
    • 포트 번호는 22 입력
    • 연결 타입은 "SSH" 선택
  • [Category] 탭에서 Connection > SSH > Auth 메뉴를 선택합니다.
  • private key file for authentication 항목에서 [Browse...] 버튼을 눌러 개인 키(*.ppk)를 선택합니다.
  • [Open] 버튼을 눌러 접속을 시도합니다.
    (최초 1회 신뢰할 수 있는지 묻는 보안 알림 대화상자가 표시되면 [Yes]를 선택 합니다.)

 

파일 전송을 위한 SCP 연결

WinSCP를 이용해 SCP 연결해 파일을 전송할 수 있는 환경을 확인합니다.

  • WinSCP를 실행합니다.
  • 로그인 창에서 접속 정보를 입력합니다.
    • 호스트 이름에 (접속주소)를 입력합니다.
    • 사용자 이름에 "ubuntu"를 입력합니다.
  • [고급] 버튼을 눌러 개인 키를 설정합니다.
    • 개인 키 파일 항목에서 [...] 버튼을 눌러 개인 키 파일을 선택합니다.
    • [확인] 버튼을 눌러 적용합니다.
  • 로그인 화면에서 [저장] 버튼을 누르고 세션 이름을 지정해 저장합니다.
  • [로그인] 버튼을 눌러 접속합니다.

 

리눅스 개발환경 설정

RAD 스튜디오에서 리눅스 애플리케이션 개발하기 위한 환경을 설정합니다.

 

자세한 내용은 다음 링크를 통해 설명합니다.

주의할 점은

1) 위 링크의 "리눅스 소프트웨어 업데이티" 단계부터 진행하시기 바랍니다.

2) PAServer 접속 시 공인 IP(Public IP)로 접속해야 합니다.(RAD 스튜디오에서 PAServer 연결 단계)

 

관련링크


번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 7571
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 7327
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 9736
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 14817
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 16525
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 12292
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 31653
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 167254
706 델파이 튜토리얼 자습서 이용 안내 관리자 2014.09.01 71833
705 [REST API] REST 기반 파일 업로드와 다운로드 구현하기 험프리 2020.08.31 57455
704 이 달의 기술자료 - 2014년 11월 험프리 2014.10.13 54030
703 이 달의 기술자료 - 2014년 6월 file 험프리 2014.06.05 50013
702 이 달의 기술자료 - 2014년 12월 file 험프리 2014.11.26 32367
701 RAD Studio XE6 Update1 발표 [1] Humphery 2014.06.20 29376
700 이 달의 기술자료 - 2014년 4월 file 험프리 2014.04.03 16752
699 이 달의 기술자료 - 2015년 03월 험프리 2015.02.25 15759
698 이 달의 기술자료 - 2015년 02월 file 험프리 2015.01.29 14964
697 [REST API] REST API 이해하기 험프리 2017.05.23 14546
696 "Could not load SSL library." 오류 대응(XE7: BaaS, RESTClient, DataSnap) [1] Humphery 2014.09.12 14064
695 RAD Studio(델파이, C++빌더) 버전별 공식 지원 플랫폼과 OS 버전 험프리 2014.03.05 11514
694 [REST] REST 클라이언트로 REST 기반 웹서비스와 연동할 수 있습니다. [3] file 험프리 2014.01.29 10485
» [환경설정] 아마존 EC2 이용해 리눅스 서버 환경 구축하기 file 험프리 2017.04.20 10426
692 이 달의 기술자료 - 2014년 8월 file 험프리 2014.07.04 9878