최근에 AWS와 node.js를 이용하여, 프로젝트를 진행하고 있다.

이전에 Azure룰 개인적으로 이용하곤 했는데, AWS는 실제 개발과 운영의 업무가 나누어져 있어서 나는 누군가가 만들어준 인스턴스를 이용하기만 하였지, 직접 하나 하나 건들일 일이 없었다. 

그런데, 지난 1월 7일에 Amazon 한국 리젼이 오픈을 하게되면서, 나도 개인 계정을 만들어 인스턴스를 생성하고, 몇몇 기능들와 서비스들을 이용해 보고 있다. 

최근에는 S3에 파일을 업로드 하거나, 다운 받는 코드를 AWS Lambda를 이용해서 실행하도록 만들었는데, Lambda는 AWS의 S3로 새로운 파일을 올리거나 받을때, 이벤트에 따라 필요한 코드를 실행할 수 있도록 도와주는 기능인데, 따로 서버를 운영하지 않아도(돈을 아낄수 있어서 좋다.) 된다.


아래는 AWS S3로 mytest.txt라는 파이을 zlib를 이용하여 압축을 한후에, S3로 업로드하는 

코드이다.

var AWS = require('aws-sdk');

AWS.config.loadFromPath('./config.json');


var s3 = new AWS.S3({ region: 'ap-northeast-2' }); 

var fs = require('fs');

var zlib = require('zlib');


var body = fs.createReadStream('C:/mytest.txt').pipe(zlib.createGzip());

var s3obj = new AWS.S3({params: {Bucket: 'seoulbucket9999', Key: 'myKey.zip'}});

s3obj.upload({Body: body}).

  on('httpUploadProgress', function(event) { console.log(event); }).

  send(function(err, data) { console.log(err, data) });


간략하세 설명을 하면  첫줄의 'var AWS = require('aws-sdk');'는 aws-sdk 패키지를 npm을 이용해서 설치한 후에 실행할때 넣어주면 된다. 

명령은 다음과 같다.  (사용을 위해서는 윈도우와 리눅스 또는 맥에 node와 npm 패키지가 이미 설치 되어져 있어야 한다.)

npm install aws-sdk

그리고,  'AWS.config.loadFromPath('./config.json');' 는 S3에 필요한 Access-key와 secret key를 별도의 config파일에 저장해서 가져오는 기능이다. 


마지막으로 아래의 코드는 로컬에 있는 mytest.txt 파일을 zlib를 이용하여 압축해서 S3에 올리는 코드이다. 

var body = fs.createReadStream('C:/mytest.txt').pipe(zlib.createGzip());

var s3obj = new AWS.S3({params: {Bucket: 'seoulbucket9999', Key: 'myKey.zip'}});

s3obj.upload({Body: body}).

  on('httpUploadProgress', function(event) { console.log(event); }).

  send(function(err, data) { console.log(err, data) });


'공부하는 것 > Node Js' 카테고리의 다른 글

Nodejs npm 에서 Proxy 설정하기  (0) 2016.07.03
AWS Node SDK 사용방법 - S3에 파일 올리기  (0) 2016.02.26
Posted by 행복상자

오늘은 토요일.

예외없이 새벽 6시에 일어났다.

오랜 기간 등안 익숙해진 습관이 이제는 관성적으로 주말에도 지속이 된다.

 

무엇을 할까?

 

지난 11월 11일에 AilExpress에서 구매한 3인치짜리 TFT-LCD가 어제 도착하였다.

그래 오늘 아침을 그동안 못 만져 보았던, "Raspberry Pi를 가지고 놀아야겠다"라는

생각이 들었다.

 

기존에 설치되었던 Package들을 업데이트 & 업그레이드하는데 8GB짜리 SD카드가 용량이

모자라 File System일 깨져 버렸다.

 

복구할까? 새로 설치 할까? 사이에서 갈등을 하다가, 시간이 적게드는(?) 새로 설치로 방향을 잡았다.

 

그런데...

 

아차, 설치 방법을 잊어버렸다.

→ 물론 respberrypi.org에 모두 올려져 있다. 또는 국내 라즈베리 파이 커뮤니티인 "산딸기 마을"에 가보면

   자세한 설치내용과 응용에 필요한 정보들을 얻을수 있다.  

 

[설치 시작]

1. "라즈베리 파이" 홈페이지로 이동

- www.respberrypi.org

 

 

 

2. 웹사이트 상단의 Download 메뉴를 클릭하거나, 브라우져의 주소창에 다음을 입력하고

   https://www.raspberrypi.org/downloads/ 로 이동한다.

  

3. 화면 상단에 "NOOBS"와 "RASPBIAN" 두개의 기본 설치 이미지가 있는데, 여기서는
   NOOBS를 설치하도록 하겠다. (설치가 간단하다)

 

 

4. NOOBS를 클릭해서 이동하였다면, Download Zip을 클릭하여, 이미지 파이을 다운받도록 한다.

   필요한 설치 방법은 NOOBS setup   에 나와있다. (다운로드 하는동안 잠시 다녀오는 것도 좋다.) 

 

5. 윈도우와 맥/리눅스 버전으로 설치할 수 있는 방법이 있지만, 여기서는 윈도즈로 설치하는 방법에 대해서

   정리한다.

   SD 카드는 보통 8GB 이상이 좋은데, NOOBS로 설정하는 것이 쉬운 것은 위에서 받은 파일을 Format이 된

   SD 카드로 복사해 주면된다. 순서는 아래와 같다.

  

 

 NOOBS download → 압축을 푼다. → Format된 SD카드로 복사. 

        

 

6. 이제 라즈베리 파이에 SD카드를 삽입하고, 잠시 기다리면 설치할 OS를 선택하는 화면이 나오는데,
   Rasbian을 선택 하고 상단의 Install 버튼을 마우스로 실행시키면 설치가 진행된다.


7. 설치와 부팅이 정상적으로 이루어 지면, GUI 화면이 나타나게 된다. 

   지난 9월에 릴리즈된 Rasbian Jessie는 바로 GUI화면을 제공하고 있는것 같다. 

   이전 버전에서는 CLI 기반에서 제공하는 설정 툴인 raspi-conig에서 기본 설정을 하였는데, 

   이 부분이 달라졌다.  아이들에게는 배우기 쉬운 친화적인 방식이거라 생각된다.



이전보다는 약간 달라진 GUI이지만 좀 더 사용하기 쉽고, 접근성도 용이하다.

아직 라즈베리 파이에 언어 설정과 무선랜 설정이 안되어 있다. 이는 다음 기회에 정리하려고 한다.


  


 

 

 

 

 

 

 

'좋아하는 것 > Hardware' 카테고리의 다른 글

라즈베리 파이 설치  (0) 2015.11.28
NVIDIA의 ION(아이온) Platform에 대한 소개  (0) 2009.02.03
Posted by 행복상자