Redis Desktop Manager(RDM)이 무엇이냐 하면


터미널에서 값을 아무리 넣고 빼고 해도 제대로 들어갔는지도 보이지 않고 어떻게 들어가는지 보고싶을때가 있다.

그런 사람들을 위해 RDM이 존재한다.

즉, Redis에서 key-value 데이터값을 UI적으로 볼 수 있는 프로그램이다.

MySQL의 워크벤치와 동일한 목적을 갖는 프로그램이라고 생각하면 된다.



일단 결론을 말하면 


1. 우분투 버전(ISO이미지)

최근 우분투 버전인 ubuntu-16.04에서는 설치를 할 수 없다!!!

이전 우분투 버전인 ubuntu-14.04.4에서는 설치를 해야한다.

이유는 최신버전이어서 호환성? 이 부족한 것인듯하다.


2. Redis Desktop Manager를 다운받는다.(당연히 우분투 환경에서)

다운로드


3. 우분투에서 터미널을 열어라.


4. 다운로드 받은 파일을 압축해제하는 명령어를 입력한다.


dpkg -i redis-desktop-manager_X.X.X_i386.deb


X.X.X는 당연히 받은 파일 버전이다.

틀리기 쉬우므로 -i이후에 문자는 다운받은 파일명을 통째로 갖다붙이면 편하다.

여기서 계속 의존성문제가 발생했다. 구글에서 찾은 결과.

의존성 문제 해결

과 같이 $sudo apt-get -f install를 입력해라.

 

이래도 안될 경우, 우분투가 너무 최신버전이어서 그렇다.

그래서 맨 위에 미리 말한것이다.

리눅스 14버전을 설치해서 $sudo apt-get -f install 까지 작성한뒤, 아래 명령어를 입력하면 창이 열린다.

5. 이제 설치된 rdm 파일을 열어보자.


/usr/share/redis-desktop-manager/bin/rdm


입력하면, 드디어 뭔가 쭉쭉 올라가면서 나온다. 나온다.


이게 뜨면 성공~


이제 Redis Desktop Manager를 사용하도록 하자.

Posted by sungho88
,

리눅스가 낯설다보니.

낯선. 용어


의존성 문제가 발생했습니다. 설정하지 않고 내버려둡니다.


뭔 말인가?


해결방법


http://forum.falinux.com/zbxe/index.php?document_srl=832687&mid=lecture_tip


 $sudo apt-get -f install입력해주면 해결~


..............................될 것이라 생각했지만 안된다.


Redis Desktop Manager를 Ubuntu에 깔려고 하다가 발생한 문제이다.

Redis Desktop Manager란 MySQL의 Workbanch아고하나?


그 GUI를 통해 Redis 구조를 보여주는 프로그램이다.

도대체 의존성 문제가 무엇인가?



바로바로바로바로





Posted by sungho88
,

가상 OS를 생성하고 우분투에 정상적으로 접속을 했다면..

우분투 환경에서 마우스 오른쪽 클릭 - 터미널 열기를 해서 터미널을 연다.


그 다음에 redis파일을 다운받아야하는데 브라우저를 열고 

ZIP 파일을 직접 다운받을수도 있지만, URL주소를 통해 웹으로 다운을 받을수도 있다. 

다음과 같이 URL을 적어주면 된다.


아 그전에...


리눅스가 처음이라면 Ubuntu에 설치된 패키지들을 업데이트해줄 필요가 있다.


$sudo apt-get update 


Redis 설치


$ wget http://download.redis.io/releases/redis-3.2.0.tar.gz --> 파일 다운로드에 접속해서 파일 다운받기

$ tar xzf redis-3.2.0.tar.gz    --> 방금 받은 파일 압축 풀기

$ cd redis-3.2.0 --> 압축 푼 폴더로 이동

$ make

$ make test  

$ make install 

이것이 기본적인 Redis를 설치하는 방법이다. 

위 과정이 끝났다면 우분투에 Redis가 설치되었다.


...여기서 끝인줄 알았다.


src/redis-server도 잘 동작한다.

하지만, redis-cli는 거부된다.refuse 정상적으로 실행되지 않는다.

한 가지 빼먹은 사실이 존재했다.


위 명령어를 마치면 우분투에 redis가 설치된 상태이다.

서버를 실행하기 전에 세팅을 해줘야한다.




$ utils/install_server.sh

$ sudo apt-get install redis-tools
$ sudo apt-get install redis-server

Redis는 메모리 기반이기 때문에 


1. 최대 메모리를 얼마나 할 것인지, 

2. 포트번호는 어떻게 할 것인지

3. 로그 파일 이름은 어떻게 할 것인지,


등등 설정해 줄 것들이 있다. 자동으로 설정해주면서, 물어보는 방식이다.

그냥 Enter만 열심히 때려라.

이렇게 해야 설정한 환경으로 서버가 100% 정상적으로 동작하게 된다.

안그러면 포트가 지정이 안되어있으므로 안됨.

이제 하면된다.


Redis 서버 실행


$ src/redis-server --> 기본적인 Port로 서버가 연결된다.


Redis 클라이언트 실행

$ src/redis-cli --> 기본적인 Port로 연결되며 어떤 작업을 할 수 있는 화면으로 이동


위까지 진행헀을 때, 정상적인 동작


127.0.0.1:6379>

와 같이 표시된다면 정상적으로 설치가 완료가 되었고 작동하고 있다이다.


127.0.0.1는 당신의 IP 주소이며, 6379는 지금 동작중인 redis server의 포트번호이다.
이제 ping pong 테스트를 해보자.


127.0.0.1:6379>ping
PONG

재밌다. 이렇게 뽕이 나오면 100% 완벽하게 설치가 완료되었다.

이제 간단히 값을 한번 넣어보겠다.


127.0.0.1:6379> SET key "Hello Redis"

OK

127.0.0.1:6379> GET key

"Hello Redis"


String 하나를 넣고, 가져와봤다. 


이상으로 우분투에서 레디스를 설치하는 방법에 대해 알아봤다.


Posted by sungho88
,


[레디스 개념 및 특징]


Redis도 약자이다(REmote DIctionary Server)

Salvatore Sanfilippo라는 이탈리아 해커가 MySQL로 어떤 어플을 개발하다가 느려터졌다고 생각했고, 

직접 빠른 서버를 만들어봐야겠다고 생각했고, 

그 결과 Redis를 개발하게 되었다는 비하인드 스토리...


이 인간


[레디스 특징


1. 오픈 소스 소프트웨어고,

2. 디스크가 아닌 메모리 기반의 데이터 저장소이다. (In-Memory data structure store) 

3. NoSQL & Cache 솔루션이며 메모리 기반으로 구성된다.

4. 명시적으로 삭제, expire를 설정하지 않으면 데이터는 삭제되지 않는다(영구적 보존)

5. 여러대의 서버 구성 가능하다.

6. 데이터베이스로 사용될 수 있으며, Cache로도 사용될 수 있는 기술이다.

7. 성능은 서버에 따라 다르나 초당 2만 ~ 10만회 수행한다. 


Memory 위에서 동작하는 Key/value 저장소(Store)인 레디스는 NoSQL DBMS로 분류되며 동시에 Memcached와 같은 인메모리(In-memory) 솔루션으로 분리된다. 

성능은 Memcached이 갖고 있는 좋은점을 기반으로 만들어졌기 때문에 Memcached보다 우수하긴하지만 더욱 복잡하며, 다양한 데이터 구조체를 지원하기 때문에 Message Queue, Shared memory, Remote Dictionary 용도로 사용될 수도 있다. 

대부분의 언어를 사용할 수 있지만, Linux를 이용하기를 권장하고 있다.

그리고, 안전한 데이터의 보관과 백업을 위해 두 가지 방법을 제공한다.


1. 다른 서버의 메모리에 실시간으로 복사본을 남길 수 있다. 

2. 디스크에 직접 저장하는 방법도 존재한다.


NoSQL 중에서도 Redis가 주목을 받는 이유는 다음과 같다.

- 데이터 저장소로 입력/출력이 가장 빠른 메모리를 채택.

- 단순한 구조의 데이터 모델인 Key-Value 방식을 통해 빠른 속도.

- 캐시 및 데이터 스토어에 유리.

- 다양한 API 지원.


Redis는 페이스북, 인스타그램, 네이버 LINE 서비스, StackOverflow, 블리자드 등 대형 서비스 없체들이 사용자들의 대규모 메세지를 실시간으로 처리하기 위하여 사용하고 있다.


※인메모리 캐시(In-memory Cache)란?


메모리 캐시 기반의 제품이 많은 시스템에서 사용되는 이유는 단연 성능!!!

캐시 방식을 통해 DB Read의 부하를 감소할 수 있기 때문이다.

서비스 요청이 증가하여 DB요청이 많아지면 DB서버 부하가 증가하게 되는데 메모리 

캐시가 적용되면 성능 및 처리속도가 향상된다.


[레디스 장점]


1. 리스트, 배열과 같은 데이터를 처리하는데 유용하다.

 - value 값으로 문자열, 리스트, Set, Sorted set, Hash 등 여러 데이터 형식을 지원.

 - 따라서 다양한 방식으로 데이터를 활용할 수 있다. 

 - 리스트형 데이터 입력과 삭제가 MySQL에 비해서 10배정도 빠르다고 한다.

 - 

2. 여러 프로세스에서 동시에 같은 key에 대한 갱신을 요청할 경우,

   Atomic 처리로 데이터 부정합 방지 Atomic처리 함수를 제공(뭔 소린지 모르겠다...)


3. 메모리를 활용하면서 영속적인 데이터 보존

 - 명령어로 명시적으로 삭제, expires를 설정하지 않으면 데이터가 삭제되지 않는다.

 - 스냅샷(기억장치) 기능을 제공하여 메모리의 내용을 *.rdb 파일로 저장하여 해당 시점으로 복구할 수 있다.


4. Redis Server는 1개의 싱글 쓰레드로 수행되며, 따라서 서버 하나에 여러개의 서버를  

   띄우는 것이 가능하다.

 - Master - Slave 형식으로 구성이 가능함

 - 데이터 분실 위험을 없애주는 것이 바로 위 Master - Slave 방식이다.



위 기능을 이용하면 실시간으로 데이터를 다른 서버에 복제한다. 

즉, Master server가 down되어도, slave server로 접속하면 바로 서비스를 계속할 수 있다.

그리고 레디스의 성능을 거의 떨어뜨리지 않고 디스크 쓰기 기능을 제공한다. 

레디스 시작 시 이 데이터를 읽어 들어므로 데이터 분실 위험은 거의 없다고 봐도 된다.


5. Redis에는 5가지의 데이터형을 사용할 수 있다.

 - String

 - Lists

 - Sets

 - Sorted sets

 - Hashs



다음 블로그에서...



[참고 사이트]


http://ojava.tistory.com/70

http://bcho.tistory.com/654

http://mydb.tistory.com/210

http://redis.io/documentation

http://crystalcube.co.kr/176 


Posted by sungho88
,

OS(Operating System)운 운영체제. → Windows, Linux, Unix, IOS 등등이 이에 속한다.

한 컴퓨터에 여러개 설치를 할 수는 있지만, 실행은 하나만 가능하다.

하지만, 가상 OS를 사용하면 하나의 OS에서 여러개의 OS를 실행하는 것이 가능하다.


대표적인 가상 OS 프로그램이 바로 VirtualBox이다.

설치해보자.



VirtualBox 다운로드 공식 사이트


자신의 컴퓨터에 맞는 OS를 찾아서 다운로드 한뒤, 실행한다.




다음 과정도... 눈치껏 Next 무한 반복하면 설치가 완료된다.


위와 같이 뭘 설치하라고 나오면 무조건 설치 GoGo.

설치가 끝나면 바탕화면에 아이콘이 생겼다. 실행시킨다.



그럼 아래와 같은 첫 화면이 뜬다.




새로 만들기 머튼 클릭!




이름은 자기 마음대로.

종류는 자기가 원하는 OS를.. 버전도 자기가 원하는거. 하고 싶은거 해~


나는 Linux 그 중에서 Ubuntu를 설치!!



메모리를 지정하라고 한다.

테스트이고, 뭐 그다지 많이 필요없으므로 기본값인 768MB로 한다...왜 이렇게 크지.?



처음이므로 가상 하드디스크가 존재하지 않는다.

그러므로 그냥 냅두고 만들기 버튼 클릭하여 넘어가면 된다.


이게 뭔가.

모른다. 그냥 VDI로 선택하고 넘어간다.

또 물어본다.

동적 할당 고정 크기...

그냥 동적 할당으로 넘기고 다음 클릭


또 묻는다.

하드디스크 용량 설정... 왠만큼 기본으로 잡아주기 때문에 그냥 넘겨.. 드디어 만들기 버튼이!


드디어 

드디어



 설치완료





















Posted by sungho88
,

EC2의 개념정리


EC2는 Elastic Compute Cloud의 약자.

아마존 웹 서비스(AWS)에서 가장 중요한 서비스이다.


한 대의 컴퓨터를 임대한다는 개념이며 특별한 컴퓨터도 아니다. 

우리가 흔히 사용하는 컴퓨터와 같다고 할 수 있으며, 

실제 컴퓨터로 할 수 있는 광범위한 작업들을 EC2를 통해 작업을 할 수 있다.


다만, EC2는 물리적이 아니라 아마존에서 세계 각 지역에 만들어놓은 인프라(데이터 센터)에 

만들어지는 것이기때문에 네트워크를 통해 제어를 해야한다.

(참고로 2016년. 서울에도 데이터 센터가 생겼다. 좀 더 빨라지지 않을까?)


AWS의 경우 클릭 몇 번만에 컴퓨터 1대를 설치할 수 있으므로 편리하다.

또한, 컴퓨터가 필요없게 됐을때 클릭 몇 번만에 컴퓨터를 설치할 수 있으므로 편리하다.

즉, 유연하며, 탄력이 있는 컴퓨팅이 가능하다.

EC2에 Elastic도 "탄력이 있는, 유연한" 이라는 뜻이다. 그래서 EC2로 이름을 만들은 것일수도 있겠다.

즉, 컴퓨터 생성 및 삭제가 매우 쉽다.


자신이 선호하는 OS를 설치하고, 웹 서비스를 위해 필요한 프로그램(웹 서버, DB)을 설치하면 된다.


EC2를 통한 가장 기본적인 업무는 


웹서버를 설치하고 이 웹서버를 통해서 

사용자가 웹브라우저를 통해 요청하는 웹페이지나 이미지, 동영상 등을 제공하는 것이다.


인스턴스란 1대의 컴퓨터를 의미하는 단위이다.



결론.


특징


1. 인터넷을 통해서만 접속을 할 수 있다.

2. 컴퓨터 주문 후 1분안에 생성이 가능하며 삭제 역시 즉시 제거가 가능하다.

3. 초기 구입비가 전혀 없고, 사용한만큼 비용을 지불하면 된다.

4. 컴퓨터를 사용할때 프로그램 설치, 파일 저장, 설정 변경... 이 상태 그대로 저장이 가능하다.

이를 이미지라고 한다. 이 이미지를 이용해서 새 컴퓨터를 만들면 저장된 상태와 똑같은 컴퓨터를 

생성할 수 있다. 컴퓨터를 생성할때마다 반복적으로 설치하는 작업을 하지 않아도 되는 것이다.


AWS에서 EC2 서비스 - 인스턴스를 생성하는 방법은 이미 블로그에 작성을 해놨다.


인스턴스는 AWS에서 컴퓨터 하나를 의미한다.

인스턴스를 4개 생성한다는 표현은 4개의 컴퓨터를 AWS 인프라 위에 생성한다는 뜻이다.

 



EC2와 웹 서버


다시 말하면,

EC2의 인스턴스는 한 대의 독립적인 컴퓨터이기 때문에 뭐든 일을 EC2로 할 수 있다.

하지만, AWS를 위해 고안된 인프라 서비스이고, AWS에서 제공하는 서비스 중에 웹서버 역할을 할 수 있는 서비스는 EC2밖에 없기때문에 가장 중요한 기능은 역시 웹서버라고 할 수 있다.

즉, 인스턴스에 웹서버를 설치하는 방법에 대해 알아보고, 웹서비스를 하는 방법에 대해 알아보자.


웹서버인 Apache를 설치하기위해 SSH를 통해 인스턴스에 접근을 해야한다.

이것역시 이전에 블로그에 작성해놨다.


PUTTY를 이용하여 인스턴스에 접근하는 방법



이와같은 Welcome to ubuntu  ~~~~~~

라고 나온다면 정상적으로 접속한 것!!!!



접속을 완료했다면, 다음과 같은 명령어를 입력한다.



sudo apt-get update;


뭔가 쭉쭉쭉 쫙쫙쫙 올라가면서 자동으로 뭔가가 설치된다.

설치되어있는 모둔 패키지를 새 버전으로 업데이트 시키라는 명령어다.



sudo apt-get install apache2;

아파치(Apache) 웹서버가 설치되었다.



정리.


Linux 기반의 ubuntu 환경의 인스턴스를 만들었고, 그 위에 아파치를 설치했다.

이제 접속이 되는지 테스트를 해봐야겠다.


웹브라우저에 Public DNS 주소를 쳐보자.



이런 화면이 나온다면 정상적으로 동작하고 있는것이다!!!!!!!!!!!










Posted by sungho88
,

아마존 웹 서비스(Amazon Web Service)는 줄여서 AWS라고 부른다.


클라우드(Cloud) & 아마존 웹 서비스(AWS)

- 인프라 제공하는 역할을 하고, 웹 서비스를 해야하는 개발자들은 이 인프라를 임대하여 사용한다.

- 즉, 서버의 구매, 구축, 운영을 대행해주는 서비스이다.(웹 호스팅과 유사함)

- 탄력적인 인프라 운영(사용자의 폭주 시 서버의 성능, 갯수를 유동적으로 빠르게 변경이 가능하다)

- 사용한만큼 과금하는 방식이다.

  

EC2 

- Elastic Compute Cloud

- 쉽게말해 1대의 독립적인 컴퓨터를 임대한다고 생각하면 된다. 평범한 컴퓨터처럼 사용할 수 있다.

- 다만 물리적인 컴퓨터가 아니라 가상의 컴퓨터이다.

- Linux, Window 운영체제 제공한다.

- 웹서버 또는 애플리케이션 서버로 사용된다.


S3

- Simple Storage Service

- 파일 서버라고 할 수 있다.(이미지나 동영상을 갖고 있다가 제공)

- EC2에도 할 수 있지만, S3의 경우 특정 변경없이 무제한 저장이 가능하기 때문에 주로 사용된다.

- 스케일은 아마존 인프라가 담당하기때문에 편리하다.

- 1바이트 ~ 5테라 바이트의 단일 파일을 저장하는 것이 가능하다.


RDS

- Relational Database Service

- MySQL, Oracle, MsSQL 등등이 존재한다.

- DB를 쉽게 운영할 수 있게해주는 서비스이다.

- 백업, 리플리케이션과 같은 것을 아마존 인프라가 자동으로 제공한다.


EDB

- Elastic Load Balancing

- EC2로 유입되는 트래픽을 여러대의 EC2로 분산하는 기능을 한다.

- 장애가 발생한 EC2를 감지해서 자동으로 배제하는 기능을 한다.

- Auto Scaling 기능을 이용해서 EC2를 자동으로 생성 및 삭제를 한다.


위와 같은 서비스들을 조합해서 웹 서비스를 만들면 되는것이다.

AWS를 제어하는 방법에는 세 가지가 존재한다.


첫 번째. AWS Management Console

두 번째. CLI

세 번째. SDK


(1)AWS Management Console

웹에서 접속하기 때문에 언제 어디서든 접속이 가능하며 다른 것들에 비해 쉽고 사용하기 편하다.

하지만, 일부 기능의 경우 CLI를 통해서만 제공되기떄문에 상호보완적인 관계라 할 수 있다.


(2)CLI

Command Line Interface의 약자로 명령어를 이용해서 서비스를 제어한다.

아이콘과 같은 GUI 환경이 컴퓨터 세계를 장악했지만, 코딩으로 해야하는 부분이 존재한다.


(3)SDK

Software Development Kit의 약자로 각 언어(Java, Python, PHP ..)별로 AWS를 프로그래밍으로 제어할 수 있는  API 묶음이다. 이를 이용해서 AWS 인프라를 제어할 수 있는 명령어라고 할 수 있다. 

Posted by sungho88
,

PuTTY을(를) 사용하여 Linux 인스턴스에 연결하려면 프라이빗 키에 대해 생성한 .ppk 파일이 필요하다. 


ppk파일 만드는 방법 


1. PuTTY을 실행한다.

2. [Category] 창에서 [Session]를 선택하고 다음 필드를 작성한다.


[Host Name] 상자에 user_name@public_dns_name을 입력한다. 

AMI에 적합한 사용자 이름을 지정해야 한다. 


예)

Amazon Linux AMI의 경우 사용자 이름은 ec2-user

RHEL5 AMI의 경우 사용자 이름은 root 또는 ec2-user 

Ubuntu AMI의 경우 사용자 이름은 ubuntu 

Fedora AMI의 경우 사용자 이름은 fedora 또는 ec2-user 

SUSE Linux의 경우 사용자 이름은 root 또는 ec2-user 


우툰부 서버를 생성한 나의 경우  ubuntu@public_dns_name

public_dns_name은 내 인스턴스 생성한 콘솔창에서 확인이 가능하다.

⑵ [Connection type] 아래에서 [SSH]를 선택해야 한다.

⑶ [Port]가 22인지 확인한다.

⑷ [Category] 창에서 [Connection], [SSH]를 차례로 열고, [Auth]를 선택한다. 


그리고 


1. [Browse]를 클릭.

2. 키 페어에 대해 생성한 .ppk 파일을 선택한 다음 [Open]을 클릭.

3. (선택 사항) 이 세션을 나중에 다시 시작하려는 경우 세션 정보를 나중에 사용할 수 있게 저장할 수 있다. [Category] 트리에서 [Session]을 선택하고 [Saved Sessions]에 세션 이름을 입력한 다음 [Save]를 클릭한다.



드디어 [Open]을 클릭하여 PuTTY를 접속하게 된다.

처음에 접속이 되기 전에 PuTTY에서 연결하려는 호스트를 신뢰할 수 있는지 묻는 보안 알림 대화 상자가 표시된다. 그냥 무시하고 예를 누르면 된다.



Welcome to Ubuntu  ....


정상적으로 접근한 것이다.이상으로 PUTTY를 이용해서 리눅스 우분투 서버에 접속하는 방법을 알았다.

Posted by sungho88
,

인스턴스를 시작한 후 인스턴스에 연결을 한 후에는 

바로 앞에 있는 컴퓨터를 사용하는 것처럼 인스턴스를 사용할 수 있습니다.


인스턴스를 처음 시작한 후, 연결할 수 있도록 인스턴스가 준비될 때까지 몇 분 정도 걸릴 수 있습니다. 인스턴스가 상태 확인을 통과했는지 확인하십시오. 

[Instances] 페이지의 [Status Checks] 열에서 이 정보를 볼 수 있습니다.


PuTTY을(를) 사용하여 Linux 인스턴스에 연결하려면 아래와 같은 조건이 만족되어 있어야 한다.


1. PuTTY가 설치되어 있어야 한다.

2. 인스턴스의 ID가 어디에 있는지 확인해놔야한다.

Amazon EC2 콘솔을 사용하여 인스턴스의 ID를 볼 수 있습니다([Instance ID] 열에서). describe-instances(AWS CLI) 또는 ec2-describe-instances(Amazon EC2 CLI) 명령을 사용할 수도 있습니다.


3. 인스턴스의 퍼블릭 DNS 이름을 확인해놔야한다.

Amazon EC2 콘솔을 사용하여 인스턴스의 퍼블릭 DNS를 볼 수 있다. [Public DNS] 열을 확인. 

이 열이 숨겨져 있는 경우 [Show/Hide] 아이콘을 클릭하고 [Public DNS]를 선택합니다. 


4. 프라이빗 키를 찾아놔야한다.

인스턴스를 시작할 때 지정한 키 페어에 대한 .pem 파일의 정규화된 경로가 필요합니다.


5. IP 주소에서 인스턴스로의 인바운드 SSH 트래픽 활성화

인스턴스와 연관된 보안 그룹이 IP 주소로부터 들어오는 SSH 트래픽을 허용하는지 확인하십시오. 자세한 내용은 인스턴스에 네트워크 액세스 권한 부여를 참조하십시오.




[PuTTYgen을 사용하여 프라이빗 키 변환]


PuTTY에서는 Amazon EC2에서 생성한 프라이빗 키 형식(.pem)을 기본적으로 지원하지 않는다. 

PuTTY에는 PuTTYgen이라는 도구가 있는데, 우리가 필요한 PuTTY 형식(.ppk)으로 변환할 수 있다. 

PuTTY를 사용하여 인스턴스에 연결하기 전에 프라이빗 키를 이 형식(.ppk)으로 변환해야한다. 


PUTTY 공식 홈페이지



개인 키를 변환하는 방법은 다음과 같다.


1. PuTTYgen을 시작한다.


2. [Type of key to generate]에서 [SSH-2 RSA]를 선택한다.




3. [Load]를 클릭한다. 기본적으로 PuTTYgen에는 확장명이 .ppk인 파일만 표시된다. 

   따라서, .pem 파일을 찾으려면 모든 유형의 파일을 표시하는 옵션을 선택한다.



4. 인스턴스를 시직할 때 지정한 키 페어에 대한 .pem 파일을 선택한 다음 [Open]을 클릭한다. 

[OK]를 클릭하여 확인 대화 상자를 닫는다. 무사히 성공했다면 아래와 같은 창이 뜬다. 그냥 닫아라.


 



5. [Save private key]를 클릭하여 PuTTY에서 사용할 수 있는 형식으로 키를 저장한다. 

   PuTTYgen에서 암호 없이 키 저장에 대한 경고가 표시된다. 여기서는 예를 클릭하고 무시한다.



6. 키 페어에 사용된 키에 대해 동일한 이름을 지정한다(예: my-key-pair). 그리고 자동으로 .ppk 형식의 파일로 추가가 된다. 즉, .pem과 .ppk 두 개의 파일이 존재하게 되는 것이다.

그리고 putty에서는 ppk를 사용하게 된다.


이제 개인 키가 PuTTY에 사용하기에 올바른 형식으로 되어 있으므로 

PuTTY의 SSH 클라이언트를 사용하여 인스턴스에 연결할 수 있다.


본격적인 연결은 ...곧










Posted by sungho88
,

EC2 = Elastic Compute Cloud의 약자.

아마존 웹 서비스(AWS)에서 심장이라고 할 정도로 중요도가 큰 핵심 서비스이다.

한 대의 컴퓨터를 EC2를 통해서 '임대한다'고 할 수 있다. 

다만, 실존하는 것이 아니라 아마존에서 만들어놓은 거대한 인프라 위에 가상으로 컴퓨터가 

만들어지는 것이다.(클라우드 컴퓨팅의 개념)

클릭 몇 번만에 생성 및 삭제가 가능하다.(유연하게 다룰 수 있다) Elastic라는 뜻이 "유연하다"


- ,EC2를 사용해서 할수 있는 가장 대표적인 일은 


1. 아마존 EC2를 통해 인스턴스(=한 대의 컴퓨터를 뜻하는 단위)를 생성하고,

2. 인스턴스를 활성화(running)시킨 뒤,

3. SSH로 putty등을 이용하여 접속을 한 뒤,

4. 웹 서버 설치하고 그 웹 서버를 통해서 사용자가 요청하는 웹페이지, 이미지, 동영상 등을 제공하는 일.


[인스턴스 생성]


인스턴스란 가상의 컴퓨터 1대를 의미한다.




아마존의 핵심 서비스인만큼 맨 위에, 맨 처음에 EC2가 뜬다.

참고로 위 화면은  AWS 개발자 콘솔로 불리며 모든 AWS 서비스들을 관리할 수 있는 화면이다.

회원가입을 하고 난 뒤, 다음과 같은 화면이 메인페이지가 된다.


1. 위에서 EC2를 클릭하고 들어가면.



위와 같이 나온다. 만든게 없으므로 아무것도 안나올것이다.

위 네모. Launch instance를 클릭한다.


2. OS를 선택하라는 화면이 나온다. 난 우분투를 선택한다. Windows OS는 대부분 유료이므로 주의! 




3. 프리를 사용할 것이므로 기본적으로 선택된 것을 확인 후 Next




4. 만들기 전 컴퓨터의 성능 조정... 뭔 소리인지 모르므로 건들지 말고 Next  



5. 저장 공간을 설정하는 부분. 



Volume Type에서 SSD는 Magnetic보다 추가 요금이 발생 할 수 있다고 한다.. 

Magnetic을 바꿔도 되지만 테스트이므로 그냥 SSD로~


 

6. 내가 만들 클라우딩 컴퓨터의 이름을 설정한다. 본인 마음대로~




7. 방화벽을 설정하는 부분. 

기본적으로 SSH 포트번호인 22가 열려있으며, 
웹 서버 구축을 하기 위해서는 Add Rule버튼을 눌러서 HTTP 80포트도 추가해준다.



여기까지 하면 NExt 버튼이 아니라 


이렇게 바뀐다. 다시 한번 클릭


그러면 리뷰. 즉, 여태까지 지정해줬던 성능과. 환경세팅들이 정리되어 보여준다.

맞다면 드디어 Launch 버튼을 누를 수 있다.



키를 만들어야한다. Create a new key pair 로 변경후 키 이름을 아래에 적고 다운로드 키 페어 클릭~

다운로드에 저장된다~

그다음에 Launch를 눌러서 정말 진짜로 드디어 마침내 서버를 생성할 수 있었다.



만들어졌다~

다음엔 

이제 접속을 해봐야하므로 PUTTY를 이용하는 방법을 찾아보도록 하겠다.

Posted by sungho88
,