KIC 백엔드 수업

6월 28일 (수) - []

Crecok 2023. 6. 28. 15:03
반응형

 

원격 서버

 

 

1. 웹 호스팅 : 원격 서버의 일부를 렌탈

- ex : hosting.cafe24.com

 

▶ 일부를 빌리는 유형

1. OS - Windows / Linux

2. 웹 프로그램 - Jsp

3. 데이터베이스 - MariaDB / MySQL

 

▶ 웹 호스팅 업체에서 설치 완료

- 접속 방법만 알면 된다. ( 아이디 / 패스워드 / 포트 )

- 데이터를 넣을 때는 FTP를 쓴다 ( Filezilla / wget )

  - Jsp, Class, Image, JS, CSS 파일을 업로드한다.

- SSH ( Putty )

 

▶ OS / 웹 프로그램 / 데이터베이스가 이미 설치되어 있기 때문에 커스터 마이징을 위해 AWS를 사용한다.

 

2. 서버 호스팅

- 서버 머신을 통째로 빌린다.

- 개발자가 직접 설치한다.

 

▶ 서버 머신

- 특정 위치에 두고 관리

- 클라우드 서비스 ( 가상 머신 (VMWare) → OS 설치 ) : 인터넷 기반 컴퓨팅

- 분산 처리 : 클라우드에 연결된 다른 컴퓨터로 처리

- On-demande 적절하게 서버 활용

- AWS / nCloud

 

개발 흐름

- 기존 기업 : 개발팀 → 배포 → 서비스

- 유니콘 기업 : 인터넷 서비스 중심 ( DevOps )

- DevOps( Development + Operation ) : 단위 개발 + 운영

- 클라우드는 DevOps 방식에 있어 효과적이다.

 


 

AWS ( Amazon Web Service )

 

 

▶ 클라우드 웹 서비스

▶ 아마존 웹 서비스 사이트 : https://aws.amazon.com/ko/ 

 

클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services

 

aws.amazon.com

 

준비 : Putty / Filezilla

- AWS 로그인 → 콘솔 홈 (EC2 서버)

- 리전 영역 : 서울로 설정

 

▶ 인스턴스 시작

- 이름 및 태그 : test

- 애플리케이션 및 OS 이미지 : Ubuntu 클릭

- 인스턴스 유형 : t2-micro

- 스토리지 구성 : 30GiB

 

▶ 키 페어 생성

- 키 페어 이름 : awsex

- 키 페어 유형 : RSA

- 프라이빗 키 파일 형식 : .ppk

 

- 인스턴스 시작

- 모든 인스턴스 보기로 확인

- 인스턴스 ID를 클릭하면 인스턴스에 대한 상태를 확인할 수 있다.

 

▶ 외부에서 접속하기

- 퍼블릭 IP / 퍼블릭 IPv4 DNS 확인

- putty 실행 후 IP 입력

- 카테고리 Shh - Auth - Credentials - 첫번째 슬롯에 다운받은 ppk파일 올리기

- putty 환경설정 창이 뜨면 로그인 아이디 : ubuntu 입력

 

▶ putty

- [ uname -a ] 입력 : Linux 버전의 시스템 설정 확인

- [ sudo apt-get update ] 입력

- [ sudo apt-get install openjdk-17-jdk ] 입력 : JDK 17버전 설치

- [ java -version ], [ javac -version ] 입력 : JDK 설치 확인

- [ sudo apt-get -y install vim ] 입력 : vi 설치

 

▶ [ vi HelloWorld.java ] 입력 후, 컴파일 및 실행 해보기

 

▶ FTP를 사용하는 2가지 방법

1. vsftpd 설치

2. ssh의 기능 활용 (sftp)

 

▶ FileZilla

- 새 사이트 aws 생성

- SFTP 프로토콜 / 호스트 (퍼블릭 IP) 으로 설정

- 로그온 유형 : 키 파일

- 사용자 : ubuntu

- 키 파일 : 다운받은 awsex.ppk 설정 후 연결

- apache-tomcat tar.gz 파일 다운로드 후 연결된 서버에 업로드

 

▶ putty

- [ tar xvzf apache-tomcat-9.0.76 (파일이름) ] 입력 : 톰캣 설치

- [ ./apache-tomcat-9.0.76/bin/catalina/sh run ] 입력 : 톰캣 실행

 

▶ aws

- 인스턴스 클릭 → 인스턴스 목록 끝의 보안 그룹 이름 확인 후 선택

- 인바운드 규칙 클릭 → 규칙 추가

- 사용자 지정 TCP / 포트 범위 : 8080 / 소스 : Anywhere-Ip / 이름 : Apache-Tomcat → 규칙 저장

 

▶ putty

- [ ./apache-tomcat-9.0.76/bin/catalina/sh run ] 입력 : 톰캣 실행

- 브라우저에서 IP:8080 입력

- 톰캣 정지

- [ vi ./apache-tomcat-9.0.76/webapps/ROOT/hello.jsp ] 입력 : 해당 디렉토리 안에 hello.jsp 파일 생성

 

▶ hello.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
Hello Jsp
</body>
</html>

 

- [ ./apache-tomcat-9.0.76/bin/catalina/sh run ] 입력 : 톰캣 실행

- 브라우저에서 IP:8080/hello.jsp 입력 후 페이지 확인

- [ sudo apt-get -y install mariadb-server ] 입력 : MariaDB 설치

- [ systemctl status mariadb ] 입력 : 실행 상태 확인

- [ sudo mysql ] 입력 : DB 접속

 

▶ aws

- 인바운드 규칙 클릭 → 규칙 추가

- 사용자 지정 TCP / 포트 범위 : 3306 / 소스 : Anywhere-Ip / 이름 : MariaDB → 규칙 저장

 

▶ MariaDB root의 암호를 설정하고 원격으로 접속할 수 있게 설정하기 ( -h )

- [ sudo mysqladmin -u root password '!123456' ]

- [ sudo mysql -u root -p ] 로 로그인

- [ alter user root@localhost identified via mysql_native_password using password( '!123456' ); ]

- [ flush privileges; ]

- exit 후 [ sudo mysql -u root -p ] 로그인

- [ grant all privileges on *.* to 'root'@'%' identified by '!123456'; ]

- [ flush privileges; ] 후 exit

- [ sudo mysql -h localhost -u root -p ]

- 인스턴스 재부팅

- [ sudo mysql -h localhost -u root -p ]

 

 

반응형