[WIP] 2. AWS에서 Java에서 개발한 웹 응용 프로그램의 실행 환경 구축(EC2 초기 설정)
11823 단어 AWS
개요
이것은 AWS에서 자바(Spring-Boot)가 개발한 웹 응용 프로그램의 실행 환경을 구축하는 작업 내용의 총결이다.
이 글은 AWS에서 자바가 개발한 웹 응용 프로그램의 실행 환경 구축(VPC&EC2 제작)부터 시작되었다.이 글은'EC2 초기 설정'을 썼다.
ssh 클라이언트
설정은 Windows에서 EC2 인스턴스에 로그인할 수 있습니다.
이 기사는 PUTTY를 ssh 클라이언트로 사용하여 PUTTYGEN을 만듭니다.exe를 사용하여 EC2 실례의 개인 키 파일 (pem)을 ppk 파일로 변환해야 합니다.
ppk 파일 만들기
PUTTYGEN.exe를 시작하고 "Load"단추를 누르면 개인 키 파일을 읽을 수 있습니다.
Save provate key 버튼을 클릭하여 ppk 파일로 저장합니다.
PuTTY 설정
Host Name에 Public 서브넷의 EC2 인스턴스에 대한 Public IP 주소를 입력합니다.
Saved Sessions에 세션 이름을 입력합니다.(이 예에서는 my-aws-2060503입니다.)
세션 제한 시간(초)을 입력합니다.
로그인할 사용자 이름을 입력합니다.
「Browse...」생성된 ppk 파일을 지정하려면 단추를 누르십시오.
세션 화면으로 돌아가 Save 버튼을 클릭하여 세션을 저장합니다.
이 세션에서 "Open"단추를 누르면 ssh를 EC2에 로그인합니다.
Using username "ec2-user".
Authenticating with public key "imported-openssh-key"
Last login: Tue May 3 10:01:36 2016 from xxxxxxx.xxxxx.xxxxxxxxxxx.xxx.xxx
__| __|_ )
_| ( / Amazon Linux AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-ami/2016.03-release-notes/
[ec2-user@ip-10-0-1-196 ~]$
Private 서브넷의 EC2에 로그인
Public 서브넷의 EC2 실례와 인터넷 연결, 그리고 내 IP
自宅のIPアドレス
에서 ssh 로그인을 할 수 있도록 보안 그룹을 설정합니다.Private 서브넷의 EC2 인스턴스가 인터넷에 연결되지 않았기 때문에 Windows에서 ssh에 직접 로그인할 수 없습니다.따라서 한 번에 ssh가 Public 서브넷의 EC2 실례에 로그인하고, 개인 키 파일 ssh를 사용하여Private 서브넷의 EC2 실례에 로그인합니다.
WinSCP 등을 사용하여 Public 서브넷에 개인 키 파일을 업로드하는 EC2 인스턴스
그런 다음 다음 다음 ssh 명령을 사용하여 Private 서브넷의 EC2 인스턴스에 ssh 로그인할 수 있습니다.
$ ssh -i my-aws-keypair-20160503.pem [email protected]
새 인증 키 파일
상기 방법으로Private 서브넷의 EC2에 로그인할 수 있지만, 이 개인 키 파일은 EC2 실례와 관련이 있기 때문에 복사하지 않는 것이 좋습니다
따라서 EC2 실례 사이에서 ssh 로그인을 위한 인증 키 파일을 따로 만들고 사용합니다.
$ cd .ssh
$ ssh-keygen -t rsa
위에서 만든 idrsa.pub 명령을 사용하여 Private 서브넷의 EC2 인스턴스에 복사합니다.public
$ scp -i my-aws-keypair-20160503.pem id_rsa.pub [email protected]:
id_rsa.pub 100% 404 0.4KB/s 00:00
Private 서브넷의 EC2에 개인 키 파일을 사용하여 로그인합니다.public
$ ssh -i my-aws-keypair-20160503.pem [email protected]
id_rsa.pub의 authorized키에 추가합니다.추가 후 idrsa.pub가 필요하지 않기 때문에 삭제합니다.private
$ cat id_rsa.pub >> .ssh/authorized_keys
$ rm id_rsa.pub
$ exit
Public 서브넷의 EC2로 돌아가 개인 키 파일을 삭제합니다.public
$ rm my-aws-keypair-20160503.pem
새로 만든 인증 키로 로그인할 수 있는지 확인합니다.public
[ec2-user@ip-10-0-1-196 ~]$ ssh 10.0.2.111
Last login: Wed May 3 11:44:55 2016 from ip-10-0-1-196.ap-northeast-1.compute.internal
__| __|_ )
_| ( / Amazon Linux AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-ami/2016.03-release-notes/
1 package(s) needed for security, out of 1 available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-10-0-2-111 ~]$
EC2의 초기 설정
EC2에 로그인할 수 있으면 다음과 같이 설정합니다.이 설정은 Public/Private 서브넷 양쪽의 EC2 인스턴스에서 수행됩니다.
/etc/sysconfig/i18n
LANG=en_US.UTF-8
↓변경LANG=ja_JP.UTF-8
/etc/sysconfig/clockZONE="UTC"
UTC=true
↓변경ZONE="Asia/Tokyo"
UTC=false
/etc/localtime$ sudo cp /etc/localtime /etc/localtime.org
$ sudo ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
yum update$ sudo yum -y update
MySQL 설치(Public/Private 서브넷의 EC2)
EC2 인스턴스에서 RDS까지 MySQL Celient 연결을 설치합니다.
$ sudo yum -y install http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
$ sudo yum -y install mysql mysql-devel mysql-utilities
$ mysql --version
mysql Ver 14.14 Distrib 5.6.30, for Linux (x86_64) using EditLine wrapper
nginx 설치(Public 서브넷의 EC2)
$ sudo yum -y install nginx
$ sudo service nginx status
nginx は停止しています
$ sudo chkconfig nginx on
$ sudo service nginx start
nginx を起動中: [ OK ]
OpenJDK 설치(Prevate 서브넷의 EC2)
Java 개발 웹 응용 프로그램을 구축하고 실행해야 합니다.
$ sudo yum -y install java-1.8.0-openjdk-devel
java$ sudo alternatives --config java
2 プログラムがあり 'java' を提供します。
選択 コマンド
-----------------------------------------------
*+ 1 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
2 /usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java
Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:2
$ java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
javac$ sudo alternatives --config javac
2 プログラムがあり 'javac' を提供します。
選択 コマンド
-----------------------------------------------
1 /usr/lib/jvm/java-1.8.0-openjdk.x86_64/bin/javac
*+ 2 /usr/lib/jvm/java-1.7.0-openjdk.x86_64/bin/javac
Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:1
$ javac -version
javac 1.8.0_91
Maven 설치(Prevate 서브넷의 EC2)
웹 응용 프로그램 구축에 필요합니다.
$ sudo wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
$ sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo
$ sudo yum install -y apache-maven
$ mvn --version
Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T20:57:37+09:00)
Maven home: /usr/share/apache-maven
Java version: 1.8.0_91, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.91-0.b14.10.amzn1.x86_64/jre
Default locale: ja_JP, platform encoding: UTF-8
OS name: "linux", version: "4.4.5-15.26.amzn1.x86_64", arch: "amd64", family: "unix"
git 설치(Prevate 서브넷의 EC2)
github의 창고에서 checkkout 소스 코드가 필요합니다.
$ sudo yum -y install git
$ git --version
git version 2.7.4
$ git config --global user.email "YOUR_MAIL_ADDRESS"
$ git config --global user.name "rubytomato"
Reference
이 문제에 관하여([WIP] 2. AWS에서 Java에서 개발한 웹 응용 프로그램의 실행 환경 구축(EC2 초기 설정)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/rubytomato@github/items/42d490de16b5f5eb9f07텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)