29
1 Cloud solutions from IBM © 2015 IBM Corporation 2015. 07. 15 황경태 팀장([email protected]) Korea Lab / IBM Korea IBM Bluemix와 사물인터넷 디지털혁신을위한PaaS플랫폼 Bluemix Meetup Seoul

Bluemix meetup seoul 1st (bluemix + io t) v1.1 (20150714 kt hwang)

  • Upload
    -

  • View
    145

  • Download
    1

Embed Size (px)

Citation preview

1

Cloud solutions from IBM

© 2015 IBM Corporation

2015. 07. 15

황경태 팀장([email protected])

Korea Lab / IBM Korea

IBM Bluemix와사물인터넷

디지털 혁신을 위한 PaaS 플랫폼

Bluemix Meetup Seoul

© 2015 IBM Corporation

2

주요 내용

� IBM Bluemix 란?

� Bluemix 환경및 IoT Foundation 소개및시연

� Bluemix에서의어플리케이션구현데모

� 모바일앱구현과정시현

© 2015 IBM Corporation

3

IBM Bluemix™ 란?IBM Bluemix는 웹, 모바일, 빅 데이타등 다양한 유형의 어플리케이션을 개발 및 실행, 관리하기 위해 IBM이 제공하는 개방형표준 클라우드 기반 개발 플랫폼서비스입니다.

Built on a foundation of open technology.

www.Bluemix.net

다영한 언어로 빠르게 어플리케이션을 빌드, 배포, 확장 가능한 플래폼

제공되는 API와 다양한 서비스를 조합하여 어플리케이션을 빠르게 개발 가능

DevOps 서비스를 이용한 전체 어플리케이션 라이프사이클 관리

기업 환경에 따라 선택 가능한 유연한 서비스 모델을 제공

기존 기업 내 시스템의 데이터와 시스템 간의 안전한 방식으로 연계(Securely integrate)

오픈 기술 기반의 어플리케이션 개발 및 배포가 가능한 플랫폼

디지털 기업 혁신을 위한 개발 플랫폼

Bluemix service Catalog

• Web and Application

• Mobile

• Cloud Integration

• Security

• Internet of Things

• Data Management

• Big Data

• Business Analytics

• DevOps

• Watson

© 2015 IBM Corporation

4

IBM Bluemix 30일무료계정등록

� http://bluemix.net 방문 -> ‘등록’ or ‘Sign Up’ 클릭 -> 가입자 정보 입력 -> 이메일 인증 -> 완료

1단계: 회원 정보 입력 2단계: 이메일 인증

© 2015 IBM Corporation

5

IBM 제공 Cloud 서비스 모델

Networking Networking Networking Networking

Storage Storage Storage Storage

Servers Servers Servers Servers

Virtualization Virtualization Virtualization Virtualization

O/S O/S O/S O/S

Middleware Middleware Middleware Middleware

Runtime Runtime Runtime Runtime

Data Data Data Data

Applications Applications Applications Applications

Traditional

On-Premises

Infrastructure

as a Service

Platform

as a Service

Software

as a Service

Cli

en

t M

an

ag

es

Ve

nd

or M

an

ag

es in

Clo

ud

Ve

nd

or M

an

ag

es in

Clo

ud

Ve

nd

or M

an

ag

es in

Clo

ud

Cli

en

t M

an

ag

es

Cli

en

t M

an

ag

es

Customization; higher costs; slower time to value

Standardization; lower costs; faster time to value

IBM Bluemix

© 2015 IBM Corporation

6

Bluemix의 주요 특징

Bluemix는 웹, 모바일, 빅 데이타, 새로운 스마트 기기를 지원하기 위한 다양한 유형의 애플리케이션을 개발, 실행, 관리하기위해 제공되는 개방형 표준 클라우드 기반 플랫폼입니다

손쉬운 개발 환경 구성 Hybrid Integration

DevOps 지원 계층화된 보안 유연한 가격/서비스 모델

다양한 APIs 및 서비스

개발 언어를 선택해서 사용 가능하며, 단순히 코드를 업로드하고실행하면 됨.

오픈소스 혹은 IBM 이나 밴더사에서 제공하는 API 와 서비스에대한 카달로그를 제공하여 단 몇분만에 소스코드와 연계 사용가능

하이브리드 클라우드 환경에서자체 운영 환경 및 외부의 클라우드 환경과의 연계를 통한 개발 및 운영 환경 구현이 가능

개발, 모니터링, 배포, 로깅 도구들을 통해 개발자들이 손쉽게 개발하고 실행/운영 할 수 있음.

IBM 에서 제공하는 H/W 관련보안 및 SSO, AppScan 등의 보안 서비스 제공

사용한 만큼 지불하는 가격모델 및 정기 요금제 등 유연한요금제 제공

© 2015 IBM Corporation

7

오픈 소스 중심의 어플리케이션 개발을 위한 다양한 옵션

자신이 원하는 방식으로 어플리케이션 개발, 전개, 관리할 수 있습니다. 그 내부의 환경에 대해서는 Bluemix가 관리합니다.

Choose the level of infrastructure abstraction based on your app’s architectural needs.

개발도구(Dev Tooling)

From editors to source code management to continuous delivery, you can use Bluemix’ powerful tooling or easily bring your own.

위치(Location)

Deploy apps to Bluemix Public(in a growing number of geos), your own dedicated cloud Bluemix, or one that runs within your data center (Local*).

서비스(Services)

Pick from a catalog ofIBM, third party, open source, or your own services to extend your apps.

IBM

Third Party

Open Source

Yours

서버(Compute)

© 2015 IBM Corporation

8

IBM Bluemix 오픈 기술 기반 아키텍처

IBM Bluemix의 Cloud Foundry, Docker기반 컨테이너, Openstack의 주요 기술을 중심으로 다양한 서비스 및 옵션을 제공함과 더불어,

DevOps를 이용한 개발 환경 관리, 통합성 및 API 관리 기능을 활용하여 Seamless한 개발자 환경 제공함으로써 최신 기술을 바탕으로요구되는 혁신적인 업무 요건에 신속하게 대응할 수 있습니다.

Flexible Compute Options to Run Apps / Services

Instant Runtimes Containers Virtual Machines

Platform Deployment Options that Meet Your Workload Requirements

Bluemix

Public

Bluemix

Dedicated

Bluemix

Local*

Your Own Hosted Apps / Services

Powered by IBM SoftLayer

In Your Data Center

+ + +

DevOps Tooling

+Integration

and API Mgmt

+

Catalog of Services that Extend Apps’ Functionality

Web Data Mobile AnalyticsCognitive IoT Security Yours

+

© 2015 IBM Corporation

9

사물인터넷을위한 Bluemix 서비스 – IoT Foundation

Bluemix의 IoT(Internet of Things) 서비스는 디바이스와 센서, 게이트웨이로 부터 수집된 데이터를 활용하여 IOT 어플리케이션 개발및 관리를 위한 서비스를 제공합니다.

© 2015 IBM Corporation

10

IBM IoT 파운데이션에서 준비된 사물인터넷 디바이스

IBM IoT 파운데이션은 다양한 디바이스를 지원합니다. 리스트에 포함되지 않은 디바이스도 MQTT 3.1.1 를 이용해 연결할 수 있으며가이드 및 샘플이 공개되어 있습니다.

지원 디바이스 목록 (참조: http://ibmdw.net/iot)

디바이스 유형 설명

ARM mbed ARM mbed device

Texas Instruments

BeagleBone with Sensor Tag

Texas Instruments BeagleBone

with Sensor Tag device

Texas Instruments SimpleLink

WiFi CC3200 LaunchPad

Texas Instruments SimpleLink

CC3200 device

Intel Galileo Intel Galileo device

Raspberry Pi Raspberry Pi Model B device

Arduino Uno Arduino Uno device

Connect my own registered

device

Connect my own registered

device

Connect other devices Connect other devices

https://developer.ibm.com/iotfoundation/

© 2015 IBM Corporation

11

오늘의 Connected 사물

Raspberry Pi Texas Instruments Sensor Tag 2.0

© 2015 IBM Corporation

12

맛보기 > 1. 디바이스(Raspberry PI)에 IoT 패키지설치

� IoT 패키지 설치 및 자동 실행

IBM IoT 파운데이션은 현재 18종 디바이스를 지원합니다.Raspberry Pi에 IoT 모듈을 설치하고 실행하여 보겠습니다.

� 모듈 다운로드

© 2015 IBM Corporation

13

맛보기 > 2. 디바이스(Raspberry pi)에 IoT 서비스 실행

� 서비스 상태 확인 명령어

명령어 및 syslog를 통해 iot 서비스 상태를 확인할 수 있습니다.

� syslog에서 iot 서비스 로그 확인

© 2015 IBM Corporation

14

맛보기 > 3. IBM IoT 클라우드 연결 준비

� 디바이스 정보 및 Quickstart 연결 URL 확인

디바이스 정보와 함께 안내된 URL를 통해 IoT 클라우드에서 실시간 디바이스 데이터 확인

� 참고: 지원되는 명령어

명령 설명

sudo service iot start | stop | restart Iot 서비스 시작/중지/재시작

sudo service iot force-reload Iot 서비스 구성 재로드 및 재시작

service iot status Iot 서비스 상태

service iot getdeviceid 디바이스 ID 및 IoT 클라우드 접속 정보 안내

© 2015 IBM Corporation

15

맛보기 > 4. IBM IoT 클라우드의 Quickstart 서비스 연결

� IBM IoT Foundation Quickstart는 사전 구성없이 MAC 어드레스만으로 디바이스 데이터의 실시간 수신 및 모니터링 서비스제공합니다.

� IBM IoT Foundation Quickstart 서비스 � 실시간 디바이스 데이터 모니터링

© 2015 IBM Corporation

16

이제 본격적으로 사물인터넷 어플케이션 개발을 시작합시다

� IBM IoT Foundation 기반 어플리케이션 구현 과정

http://internetofthings.ibmcloud.com/dashboard/#/organizations/aqgmfl/home

© 2015 IBM Corporation

17

실전 > 디바이스 등록

IoT 파운데이션 클라우드 작업

� 디바이스 탭 선택

� Add Deivce 선택

� 안내따라 디바이스정보 입력

• Device Type

• Device ID(MAC)

� 자동 생성된 고유 디바이스자격증명(Credential) 복사

디바이스 작업

� 디바이스에 고유 자격증명 저장

� 디바이스에서 IoT 서비스 재시작

디바이스 등록을 통해 고유식별 자격증명 디바이스에 탑재하여, 안전한 보안 환경에서 IoT 디바이스 연결합니다.

© 2015 IBM Corporation

18

실전 > API Key 생성

어플리케이션이 IoT 파운데이션 연결에 사용할 API Key 작성. 생성 시점에 인증토큰 내용을 한번만 볼 수 있으므로 잘 보관하여야 함.

IoT 파운데이션 클라우드 작업

� API Keys 탭 선택

� New API Key 선택

� 자동 생성된 다음 정보 복사

• Key

• Auth Token

주의) Auth Token은 만들 때 한번만 그 내용을 볼 수있음. 다른 곳에서는 확인 할 없으므로 잘 보관하여야함. 만일, 잊어버려 Revoke 될 경우 키를 사용 중인어플리케이션의 서비스가 중단됩니다.

© 2015 IBM Corporation

19

� Internet of Things Foundation Starter

실전 > Iot 파운데이션 Starter 어플리케이션 작성

IBM Bluemix는 Boilerplate는 사전 정의된 서비스 및 샘플코드 또는 처음(Scratch)부터 시작할 수 있는 자원들을 패키지로제공합니다. IoT 파운데이션 Starter 는 IoT 어플리케이션을 개발에 필요한 다양한 서비스와 어플리케이션 샘플을 포함하고 있습니다.

� Bluemix 상에서 Node-RED로 구현된 IoT 어플리케이션샘플 제공

© 2015 IBM Corporation

20

실전 > Bluemix에서 Node-RED로 구현된 IoT 어플리케이션 개발

Bluemix의 Node-RED에서는 IoT 파운데이션을 통해 코딩 없이 IoT 디바이스와 양방향 통신이 가능 합니다. 그 결과 디바이스 보낸 데이터를 즉시 수신 할 수 있으며, 데이터를 분석하여 다른 서비스와 융합하여 사물 인터넷의 가치 실현을 최단시간에 이룰 수 있습니다.

© 2015 IBM Corporation

21

실전 > Bluemix에서 Node-RED에서 지원하는 Node 목록

현재(2015/03/05) Bluemix Node-RED는 약 50종의 Node 지원하며 지속적으로 확장하고 있습니다.

© 2015 IBM Corporation

22

실전 > DevOps Service

DevOps는 Git 기반으로 동작하며 Live Editor를 통한 실시간 수정 및 배포가 가능합니다. Git 클라이언트 및 범용 Git 툴을사용하여 Bluemix에 구현된 소스를 관리할 수 있습니다.

© 2015 IBM Corporation

23

실전 > IoT 디바이스 어플리케이션 Git 저장소 Clone

� Github에서 소스 다운로드

IoT 디바이스용 서비스 샘플의 소스가 Github에 공개되어 있으며, Reference 프로그램으로 활용할 수 있습니다.

� 주요 소스 설명

파일명 설명

iotmain.c IoT 서비스 메인 프로그램

mqttPublisher.c IOT 서버 접속, 메시지 전송, 수신 등 MQTT 3.1.1 기반의 통신 담당 모듈

mac.c, cpustat.c MAC 어드레스, CPU 상태 확인 등. 디바이스 확인을 위한 소스

jsonator.c Raspberry pi에서 전송할 JSON 메시지 작성

cJSON.c, jsonReader.c Json 라이브러리 및 처리 소스

© 2015 IBM Corporation

24

실전 > IoT 디바이스 어플리케이션 수정

IBM IoT foundation에 전송할 JSON 메시지 포맷 수정

© 2015 IBM Corporation

25

실전 > 수정된 IoT 디비이스 어플리케이션 빌드 및 설치

수정한 IoT 디바이스 어플리케이션을 빌드하고 설치합니다

� 소스 빌드– 환경에 따라 추가 라이브러리가 필요할 수 있음– 예) devscripts, build-essential, libssl-dev 등

참고) Lint 완료 후 출력되는 서명관련 오류 메시지는 무시하여도 됩니다.

� 기존 iot 서비스 설치제거 및 수정 iot 서비스 설치

© 2015 IBM Corporation

26

실전 > IoT 파운데이션 권한 조정 및 관리

� 대시보드에 접근할 수 있는 사용자 추가/제거

IoT 파운데이션의 조직(Organization)에 귀속된 디바이스 및 데이터 처리량을 모니터링할 수 있는 대시보드를 제공 합니다. 대시보드에 접거할 수 있는 사람을 지정/해제 할 수 있습니다.

� IoT 시스템 운영 현황 모니터링

© 2015 IBM Corporation

27

정리 > IBM IoT 파운데이션의 실행 구조

© 2015 IBM Corporation

28

참고 사이트

Bluemix Site : 메인 사이트, 사용자 가입 및

• http://bluemix.net (미국)

• https://console.eu-gb.bluemix.net/ (영국)

Bluemix 공식 Documentation 사이트

• https://www.ng.bluemix.net/docs/

Bluemix demo site : 다양한 Bluemix 샘플 어플리케이션 제공

• http://bluemixdemo.com/

Bluemix developer site : 개발자 사이트

• http://www.ibm.com/developerworks/topics/bluemix/

Bluemix Information: 개발 관련 정보를 수집하여 전하는 사이트

• http://www.bluemix.info/

Bluemix 유지보수 스케쥴 확인 (유럽 지역이 한국과

• https://developer.ibm.com/bluemix/support/#status

© 2015 IBM Corporation

29

감사합니다!