Upload
kenu-heo
View
2.683
Download
3
Embed Size (px)
DESCRIPTION
JCO 제12회 한국자바개발자 컨퍼런스 Track7 Kt cloud 기반 애플리케이션 개발 전략
Citation preview
KT Cloud 기반 애플리케이션 개발전략
OKJSP 허광남
2
Agenda
• 1. KT ucloud 에 대한 간단한 소개• 2. IaaS 기반 Java Platform 환경 구축 실습• 3. node.js 채팅 서비스 구축 • 4. 정리
3
1. KT ucloud 에 대한 간단한 소개 (5 분 )
https://ucloudbiz.olleh.com/portal/ktcloudportal.epc.ucintro.roadmap.info.html
4
KT ucloud 서비스 소개
https://ucloudbiz.olleh.com/portal/ktcloudportal.epc.ucintro.roadmap.info.html
5
2. IaaS 기반 Java Platform 환경 구축 실습 (45 분 )
• CentOS Linux• 기본적인 command line 사용법• jdk 설치와 톰캣 설치• Application Deployment • 이클립스 리모트 시스템 탐색기 활용
6
CentOS Linux
• RedHat family• http://www.centos.org/• Community ENTerprise OS
7
Which Linux
• [sys]Ubuntu, CentOS, Debian 구분 • cat /etc/issue
예 ) [root@i-3066-17238-VM ~]# cat /etc/issue CentOS release 5.4 (Final)
8
Which Linux
• 커널 버전 • uname -a
예 ) [root@i-3066-17238-VM ~]# uname -a Linux i-3066-17238-VM 2.6.18-164.el5xen #1 SMP
Thu Sep 3 04:47:32 EDT 2009 i686 i686 i386 GNU/Linux
9
기본적인 command line 사용법
• passwd
⁻ 비밀번호 변경• wget 복사한 _ 링크
⁻ 서버에 파일 다운로드• ls
⁻ 폴더 목록• mv
⁻ 파일명 변경• rpm 파일 설치
⁻ rpm -ivh jdk< 탭 >• df –h• 서버 용량
10
JDK 설치http://java.sun.com/
11
rpm 파일 설치rpm -ivh jdk< 탭>
12
adduser hbpasswd hb
13
su - hbwhoami
14
pwd현재 위치
15
http://tomcat.apache.org/tar.gz 링크 주소 복사
16
wget http://apache.tt.co.kr/....tar.gz
17
mkdir local/home/hb/local
18
tar xvfz apa...tar.gz
19
톰캣 설치
20
bin/./start.sh
21
8080 포트 접속http://14.63.216.55:8080/
22
cd ../logsaccess log
23
tail -f access 로그파일& : 백그라운드 작업
24
jsp/numguess.jsp
25
Application Deployment
• WAR• TAR• FTP• SFTP• Build with SVN, Git
26
이클립스 리모트 시스템 탐색기 활용
27
3. node.js 채팅 서비스 구축 (45 분 )
• server side javascript 개요• Development Server 구성• node.js 설치• 채팅 서비스 Deploy
28
server side JavaScript 개요
• In the beginning• Netscape JavaScript
http://docs.oracle.com/cd/E19957-01/816-6411-10/getstart.htm
29
Server side javascript 개요
• 구글의 V8 오픈소스 엔진 위에• node.js 플랫폼 탄생• callback• legacy logic
var r = db.query("select …");// r 처리
• Event loop algorithmdb.query("select …", function(r) { // r 처리 });
30
Development Server 구성
• su -• yum install openssl-devel • yum groupinstall "Development Tools" • ./configure && make && make install
31
node.js 설치
• wget http://nodejs.org/dist/v0.6.5/node-v0.6.5.tar.gz
• tar xvfz node-v0.6.5.tar.gz • cd node-v0.6.5 • cat README.md • node • which node
32
채팅 서비스 Deploy
• chat.js ---- net = require('net'); var sockets = [];
var s = net.Server(function(socket) { sockets.push(socket);
socket.on('data', function(d) { for (var i = 0; i < sockets.length; i++) { sockets[i].write(d); } }); socket.on('end', function() { var i = sockets.indexOf(socket); sockets.splice(i, 1); }); });
s.listen(7000);
34
4. 정리 (5 분 )
• 레거시 호스팅과의 비교• 클라우드와 기회비용
35
가상화와 Virtual Machine
36
가상화와 Virtual Machine
37
레거시 호스팅과의 비교
root
38
레거시 호스팅과의 비교
Hourly not monthly
39
클라우드와 기회비용
• 재고 서버 없음• 서비스 시작 문턱 낮춤• 서비스 종료 쉬움• 방치는 금물
⁻ 폭탄요금• 지속적인 모니터링 필요
40
부록
• 클라우드 서비스 가입 절차
41
클라우드 서비스 가입 절차
1. 서비스 회원 가입2. 상품 청약
1. 결제 방식 선택 (ucloud 첫 달 무료 )
3. 청약 승인 안내 메일4. 서버 인스턴스 생성5. 공인 IP 생성 ( 기본 1 개 )
1. 포트 포워딩 인스턴스 연결6. 서버 인스턴스 접속7. 서비스 애플리케이션 설치8. 로드 밸런싱9. 부하 테스트
42
서비스 가입
43
서비스 가입
44
서비스 가입
45
가입 후 로그인
46
상품 청약
47
상품 청약
48
상품 청약
49
상품 청약
50
상품 청약
51
상품 청약
52
가입 완료 안내메일
53
상품 신청
54
상품 신청
55
상품 청약 진행중
56
청약 완료 안내메일
57
클라우드 서버 신청
58
클라우드 서버 신청
59
클라우드 서버 신청
60
클라우드 서버 신청
61
클라우드 서버
62
클라우드 스토리지
63
클라우드 네트워크
64
클라우드 서버 생성
65
클라우드 네트워크
66
클라우드 네트워크
67
로드 밸런서
68
클라우드 네트워크
69
서비스 현황
70
사용자 매뉴얼
71