2015년 3월 27일 금요일

아마존 웹 서비스에 서비스 배포하기(윈도우에서)



아마존 웹 서비스 컴퓨터 등록 (?)

1. 로그인 -> 상단의 Services -> EC2 -> Launch Instance
2. Choose AMI : Ubuntu Server 14.04 LTS 선택
3. Choose Instance Type  : type 을 m3.medium 선택
4. Configure Instance : 기본으로 선택된 것.. 자신의 알맞게 수정할 수 있다.
5. Add Storage : 자신의 알맞게 저장메모리 선택
6. Tag Instance : 이름 정하기. 나는 Sooyoung TODO
7. Configure Security Group : 이게 중요한것 같은데, 내가 사용할 네트워크 및 포트 번호를 정해줘야 한다.
    ** SSH / TCP / 22 / anywhere / 0.0.0.0/0         -> SSH로 통신 할때 (PuTTY 이용)
    ** HTTP /TCP/ 80 /     "             "           -> 클라이언트 요청이 들어오는 곳 apahce2 서버 
    ** Custom TCP Rule / TCP / 8080 /                -> apache2에서 톰캣 넘겨줄때 사용.
8. 완료!!! 
     EC3 Instances 가면 가상 컴퓨터가 만들어진 것을 확인할 수 있다. 
     IP 를 잘 확인하자!
<참고 : 나는 key 발급을 따로 안하고, 이미 발금된 key로 instance 등록함.>
Edit

aws 접속 하기

자신의 인스턴스(Sooyoung TODO) 우클릭 -> connect 를 누르면 접속할 수 있는 두가지 방법이 나온다. SSH client 를 이용하는 방법과 JAVA SSH Client 를 사용하는 법. 전자가 더 쉬우니 전자로 선택!
그러면 ssh client 가 필요하다. 가장 많이 사용되고 있는 Putty 를 사용하도록 한다.
1. putty.exe/puttygen.exe/pageant.exe    for Window 설치
  • putty.exe : 외부에 접속하게 하는 실행 파일
  • puttygen.exe : puttygen.exe 는 pem 파일을 putty에서 사용가능하게 변경
  • pageant.exe : pageant.exe 는 pem 파일을 통해 putty, psftp 가 서버에 접속 가능
    2. pem 파일 ppk 로 key 변환.
    1) puttygen.exe 실행
    2) Conversions -> ImportKey 선택
    3) 해당 서버에 접속하기 위한 pem 파일 선태 ㄱ
    4) 로드가 된 것을 확인후, Save Private key  선택 -> Yes
    5) 원하는 위치에 파일명을 정하고 저장.
    6) ppk 파일 생성 완료
    7) Pageant.exe. 실행하면 윈도우 우츨 하단에 트레이로 추가된것을 확인.
    8) 트레이를 더블클릭. 화면에서 Add Key 선택
    9) 위에서 저장한 ppk 파일 선택
    10) 추가된 것을 확인 후 close
    3. aws 에 접속하기
    1) Putty.exe 실행
    2) HoseName 에 아마존에서 발급해준 Public DNS IP 를 입력. (트레이에 Pageant 가 있어야 함)
    3) 접속, Yes
    4) ubuntu 서버를 사용하면 Id 는 ubuntu 임!! 접속 확인!!
참고: http://jmkook77.blogspot.kr/2012/01/putty.html
Edit

도메인 등록

나는 이미 만들어진 도메인을 등록함. 
1) 아마존 웹 서비스 사이트에서 Services -> Route53 선택
2) Hosted Zones 가서 도메인 선택
3)  상단에 Create Record Set 선택
4) 오른편에 사용할 주소와 , 내 AWS IP 입력해주고 Create 하면 완료!
Edit

AWS RDS 만들기

여기서 만들어 주면 내 AWS 컴퓨터에 따로 DB를 만들어줄 필요가 없다. 
1) 아마존 웹 서비스 사이트에서 Services -> RDS 선택
2) Launch a DB Instance 선택
3) 자신이 만들 DB 선택 (나는 My SQL )
4) Do you plan to use this database for production purposes? 에서 Yes 해야함. No 하면 외부에서 접속이 안됐던가..
5) DB 설정을 하는 곳.
  • DB Instance 에서 default 로 선택된 "db.m3.xlarge --4 vCPU, 15 Gib RAM" 선택
  • Multi-AZ Deployment : No
  • Settings 에서 root 계정의 이름과, 비밀번호 만들어줌.
  • 나머지는 default 값으로
6) Advanced Setting 
        여기서 VPC (Virtual Private Cloud) 가 Not in VPC 로 선택. notin VPC 해야 외부에서 접속 가능!!
        나머지는 그냥 그대로!
7) Launch DB Instance 하면 완료!
8) RDS 에서 Instance 클릭하면 만들어진 DB 볼수 있음.
9) ▶ 모양의 화살표를 눌러 펼치면 DB 설정 정보를 볼수 있음. 
        여기서 상단에 Endpoint: todo.clah2qfqtj71.us-east-1.rds.amazonaws.com:3306  이렇게 쓰여진것을 볼 수 있는데 이제 외부에서 접속할      수 있는 HostName 이다!!
10) 이제 mysqlworkbench 에서 접속후 확인해보자. 여기서 table 생성해주고 하면 끝!!!
Edit

파일 전송 FileZilla 이용

AWS는 key를 가지고 접속하기 때문에 파일을 전송할 때도 Key 인증이 필요하다. 
  FileZilla에서 key를 등록하고 aws 컴퓨터에 접속하는 법을 알아본다. 
1. 편집 -> 설정 -> 연결 -> SFTP 선택 -> 키파일 추가
2. 키를 선택하면 된다. (putty에서 변환된 ppk 파일 필요. pem파일 X)
3. 파일 -> 사이트 관리자
4.  호스트 (aws public ip) 포트 22 , 프로토콜 - sftp, 로그온 유형 : 일반 / 사용자 ubuntu
5.  연결!
참고 : http://stackoverflow.com/questions/16744863/connect-to-amazon-ec2-file-directory-using-filezilla-and-sftp
Edit

서비스 배포

이제 위에 우분투 서버에서 배포과정과 동일하다. 다른건 도메인 등록건에서 localhost를 자신의 도멘인으로 적어주면 끝.
1. apache 설정
#sudo vi /ect/apache2/apache2.conf
#ServerName
ServerName 도메인 이름
를 적어준다.
2. 가상 호스트 설정
#sudo vi /etc/apache2/sites-enabled/000-default.conf
ServerName 도메인 이름
3. tomcat 설정
#sudo vi /etc/tomcat7/server.xml
엔진에 defaultHost 변경
<Engine name="Catalina" defaultHost="todo.xchans.info">
호스트 이름 변경.
<Host name="todo.xchans.info" appBase="webapps" unpackWARs="true"
autoDeploy="true">
이렇게 하면 끝!

댓글 없음:

댓글 쓰기