우분투 서버에 JAVA, Tomcat, MySQL 등등 웹 애플리케이션을 돌리기 위한 환경을 만들기 위해

일단 Xshell을 이용하여 우분투 서버에 접속을 해야 한다.


Xshell을 사용하여 우분투 서버 SSH 접속하기

1. Xshell을 실행하면 세션 창이 뜬다. 여기서 새로 만들기를 통해 새로운 세션을 만들어 줄 것이다.


2. 새로 만들기 버튼을 누르면 새 세션을 등록하기 위한 창이 뜬다. 연결에서 이름호스트를 적어준다.

(호스트는 EC2에서 새로 생성한 인스턴스의 IPv4 퍼블릭 IP이다.)


3. 다음으로 사용자 인증을 눌러 인증 방법을 Public Key로 바꿔준 후 찾아보기 버튼을 누른다.


4. 그러면 사용자 키 등록하는 창이 뜰 텐데, 가져오기를 누른 후 인스턴스 생성시 다운받았던 키 페어를 가져온다.


5. 마지막으로 비워뒀던 사용자 이름에 ubuntu라고 적은 후 확인을 누르면 끝!


6. 이제 세션에 접속해보자. 

   새로 생성한 세션을 선택 한 후 연결을 누른다.


7. 이렇게 막 쏼라쏼라 뜨면 성공!



우분투 서버 접속하기 끝!


일단, 아마존 웹 서비스를 사용하기에 앞서 아마존 웹 서비스(AWS)가 무엇인지 알아보자.


아마존 웹 서비스(Amazon Web Services; AWS)란?

AWS는 Amazon Web Services의 약자이다. 이것은 아마존이 제공하는 웹 서비스로, 각종 원격 컴퓨팅 서비스를 제공한다.


아마존이 제공해주는 서비스 중에 우리가 사용할 것은 Amazon EC2이다.


EC2(Elastic Compute Cloud)란?

쉽게 말해서, 한 대의 컴퓨터를 임대한다는 개념이다. 

다만, EC2는 물리적이 아니라 아마존에서 세계 각 지역에 만들어 놓은 인프라(데이터 센터)에 만들어지는 것이기 때문에 네트워크를 통해 제어해야한다.

EC2를 통한 가장 기본적인 업무는 웹 서버를 설치하고 이 웹 서버를 통해서 사용자가 웹 브라우저를 통해 요청하는 웹페이지나 이미지, 동영상 등을 제공하는 것이다.


이제 본격적으로 EC2 서비스를 이용하여 인스턴스를 생성하러 가보자. (인스턴스란 1대의 컴퓨터를 의미하는 단위이다.)


1. 인스턴스를 생성하기 위해 AWS 서비스 중에서 EC2를 선택한다.


2. 인스턴스 생성부분에서 인스턴스 시작을 누른다.


3. 1단계에서 Ubuntu Server를 선택한다.


4. 2단계에서 인스턴스 유형중 프리티어 사용 가능한 유형을 선택한 후에 검토 및 시작 버튼을 누른다.


5. 4번에서 검토 및 시작을 누르면 바로 7단계로 넘어가는데 여기서 시작을 눌러준다.


6. 시작을 누르면 기존 키 페어 선택 또는 새 키페어 생성이라는 창이 뜨는데, 여기서 우리는 새 키 페어 생성을 선택 한 후 키 페어 이름을 작성한다. 이름을 작성하고 나서 키 페어 다운로드 버튼을 통해 키 페어를 다운로드 한 후 인스턴스 시작 버튼을 누른다. 

(키 페어는 우분투 서버에 접속할 때 사용된다.)


7. 실행 중인 인스턴스 중 방금 생성한 인스턴스의 이름을 설정해 준다. (여러 개를 생성하게 되면 헷갈리니까^^;)


8. 새로 생성한 인스턴스(bombee22라고 이름 지어줌!)의 보안 그룹 명을 확인한다. 

(보안그룹에서 인바운드 규칙을 설정해야 하는데 이름이 헷갈릴 수 있기 때문에 미리 확인한다.)


9. 왼쪽 바에서 인스턴스 아~~~~래에 있는 보안 그룹을 클릭하여 들어간다.


10. 우리가 위에서 보고온 보안 그룹 명을 가진 애를 선택하여 인바운드 편집을 한다.


11. 우리에게 필요한 규칙을 추가한 후 저장을 한다.


이렇게 설정하면 일단은 끝!



[참고]

http://wanzargen.tistory.com/

http://codingmania.tistory.com/15

객체지향프로그래밍(Object-Oriented Programming; OOP)란?

코드를 역할에 따라 분류하여 프로그래밍 하는 방법이다.

역할에 따라 묶은 코드를 인간이나 사물처럼 하나의 독립된 개체로 간주한다.

코드를 인간 사회의 흐름과 같이 표현하기 때문에 이해하고 관리하기 쉽다.


Class라는 문법으로 표현하는데,

1) 사용자 정의 데이터 타입을 만들 때 사용한다.

2) 관련된 메서드를 관리하기 쉽게 묶을 때 사용한다.

Class 문법에 대해서는 다음 포스팅에서!!!!!!!


객체지향의 특징

1. Encapsulation(캡슐화)

추상화를 무너뜨리지 않게 만드는 문법이다.

즉, 클래스에 정의된 원래 목적에 맞게 동작할 수 있도록 클래스 멤버(변수, 메서드, 이너 클래스)의 접근 제한하는 것이다.

만약 인스턴스 변수에 무효한 값이 들어가거나 사용하지 말아야할 메서드를 호출하게 되면,

시스템이 목적한대로 동작하지 않을 수 있다.

그래서 변수나 메서드, 이너클래스의 접근을 제한하는 것이다.

 

2. Inheritance(상속)

부모-자식 간의 관계로 보면 된다.

코드의 재사용성을 위해 존재하는 개념이다.

부모의 것을 상속받으면 부모가 갖고 있는 함수와 멤버들을 따로 선언하지 않고 바로 사용할 수 있다.


3. Polymorphism(다형성)

자바에서 폴리모피즘은 오버로딩(overloading)과 오버라이딩(overriding)으로 표현된다. 같은 이름인데 다르게 행동한다.


  • 오버로딩(overloading)?

같은 기능을 수행하는 메서드에 대해 같은 이름을 부여함으로써 프로그래밍의 일관성을 확보하는 문법이다.

파라미터의 타입이나 개수가 다르더라도 같은 기능을 수행한다면, 그 메서드의 이름을 같게 함으로써 프로그래밍의 일관성을 확보할 수 있다.

이렇게 같은 이름을 가진 메서드가 추가로 적재된다고 해서 '오버로딩(overloading)'이라 한다.


  • 오버라이딩?

수퍼클래스의 메서드를 재정의 하는 방법이다. 같은 함수명을 갖고 있지만 서로 다른 클래스에서 다르게 활동한다.

재정의 하는 이유서브 클래스의 조건에 맞춰서 기능을 바꾸기 위함이다.

서브 클래스의 조건에 따라 수퍼 클래스의 메서드를 그냥 쓸 수 없다면, 서브 클래스에서 재정의해야 한다.


4. Abstraction(추상화)

어떤 목적에 맞게 동작하도록 클래스 안에 변수나 메서드를 정의한 것을 말한다.


+ Recent posts