Skip to content
SmartX Labs edited this page Sep 21, 2018 · 26 revisions

#Welcome to the SmartX Labs Mini!

SmartX Labs Mini는 그 중에서도 Raspberry Pi로 대표되는 IoT 기기를 어떻게 클라우드와 연관지어 다양한 서비스를 할 수 있을 지를 초점으로 하고 있습니다. 이를 위해 SmartX Labs의 취지에 맞춰 일반 PC 수준의 컴퓨터와 35$의 교육용 싱글 보드 컴퓨터를 활용하므로 부담없는 비용으로 IoT-μCloud를 구축할 수 있게끔 하였습니다. 이후 각 박스를 구성하고 서로 연결함으로써 전체 박스를 관제할 수 있게 만들며, 이를 통해 다양한 서비스를 동작시키고 그 결과를 확인할 수 있는 실습을 진행합니다. 여러 박스의 자원을 통합하여 빅 데이터 분석등에 사용할 수 있게 만드는 기초도 다루며, SDN 환경을 경험할 수 있는 기회도 제공하고 있습니다.

질문이나 피드백은 언제나 환영합니다. 아래의 메일 주소를 통해 소중한 의견 부탁드립니다.

문의: [email protected]

###1. Box Lab

  • Box Lab은 이후 진행할 SmartX Labs을 위한 Lab으로서, Box 내부에 가상 스위치 OpenvSwitch, 하이퍼바이저 KVM, 그리고 Docker Container 환경을 구축합니다. 또한 Box Lab은 구축한 환경에서 OpenvSwitch를 활용하여 KVM으로 생성한 VM과 Docker로 생성한 Container의 연결을 목표합니다.

  • 내용은 아래의 네 섹션으로 구성되어 있습니다.

  • 가상스위치 OpenvSwitch를 활용한 Bridge 생성 및 연결

  • 하이퍼바이저 KVM을 활용한 Virtual Machine 환경 구축

  • Docker를 활용한 Container 환경 구축

  • OpenvSwitch를 활용한 Virtual Machine, Container의 연결 및 연결 확인

###2. InterConnect Lab

  • InterConnect Lab은 이전 Lab에서 구축한 Box에 다른 기기를 연결하고, 연결된 기기에 대한 리소스 정보들을 확인합니다. 이를 위해 SNMP, Flume, Kafka등을 사용하며, 수집한 상태 정보 데이터를 확인하는 예제를 포함하고 있습니다.
  • 내용은 아래의 세 섹션으로 구성되어 있습니다.
  • Net-SNMP, Flume, Kafka, Hypriot OS에 대한 이해
  • 라즈베리 파이와 NUC 간의 기능 연결
  • Operation Data Visibility

###3. Tower Lab

  • Tower Lab은 앞선 Lab에서 구축한 Playground의 관제를 위한 Control Tower의 개념을 이해하고 실제로 구축하는 과정입니다. 이를 위해 Kafka를 통해 수집한 상태 정보 데이터를 시각화하는 예제를 포함하고 있습니다.
  • 내용은 아래의 세 섹션으로 구성되어 있습니다.
  • Control Tower 구축
  • Visibility Center 구축
  • Use case: Operation Data Visibility Service

###4. Functions Lab

  • Functions Lab은 지금껏 사용해왔던 Docker의 개념과 기본적인 사용법을 다시 한 번 리뷰하고, Docker의 강점 중 하나인 Docker Hub를 이용하여 Docker container 기반의 3-Tier web application 을 실제로 구축해보는 과정을 담고 있습니다. 이 실습에서는 Docker의 큰 특징이라고 할 수 있는 Docker image의 특징에 대한 복습, Docker Hub에 공유된 Docker image사용과 이를 통한 3-Tier web application 구축, 그리고 Docker의 아주 기본적인 네트워크 옵션인 --link 옵션에 대한 이해를 목표로 하고 있습니다.
  • 내용은 크게 두 섹션으로 구성되어 있습니다.
  • 3-Tier web application 구축
  • Appendix: Docker private registry 사용해보기

###5. WebApp Lab

  • WebApp Lab은 Raspberry Pi의 온습도 센서와 앞선 Lab에서 설치한 Docker 기반의 컨테이너 내부에 node.js 기반의 WebApp을 통해 Raspberry Pi - NUC - Tower의 3 tier 구조 웹 애플리케이션을 구축하는 과정을 담고 있습니다.
  • 내용은 아래의 세 섹션으로 구성되어 있습니다.
  • node.js 개발 환경 및 기본적인 예제 코드
  • Raspberry Pi 온습도 측정 앱 구축
  • node.js 기반 WebApp 구축

###6. Cluster Lab

  • Cluster Lab은 클라우드에서 여러 대의 머신을 마치 하나의 컴퓨터인 것처럼 활용할 수 있게 해주는 Mesos와 HDFS, 그리고 이러한 컴퓨팅 자원을 활용한 빅 데이터 분석 도구의 예로 Spark와 Zeppelin에 대해 알아보고 설치해보는 과정입니다.
  • 내용은 아래의 네 섹션으로 구성성되어 있으며, HDFS 설치는 난이도가 높으므로 희망자에 한해 진행할 수 있습니다.
  • 각 소프트웨어들의 개요
  • Mesos 설치
  • Spark와 Zeppelin 설치
  • HDFS 설치 (선택)

###7. Analytics Lab

  • Analytics Lab은 Cluster Lab에서 구축한 분석 엔진을 활용하여 빅 데이터 처리 및 시각화를 직접 해봄으로써 클라우드에서의 분산 데이터 처리 원리에 대해 이해하는 과정입니다.
  • 내용은 아래의 두 섹션으로 구성되어 있습니다.
  • 클라우드에서의 분산 데이터 처리에 대한 이해
  • Zeppelin을 이용한 빅 데이터 처리 및 시각화 예제

###8. SDN Lab

  • SDN Lab은 SDN Network에 대한 이해와 지금껏 구성된 Playground에서 SDN 제어기를 통해 Playground의 Network를 전반적으로 다뤄보는 과정을 담고 있습니다. 이 실습에서는 크게 두가지 시나리오를 담고 있는데, OpenFlow를 지원하는 스위치가 있을 경우 직접 switch를 세팅해보고 다뤄보는 실습과 물리적 switch가 없는 경우에 Mininet을 통해 간접적으로 SDN network를 경험해볼 수 있는 경우로 나뉘어져 있습니다. 사용하는 SDN 제어기는 ONOS(Open Network Operating System)으로, 실습은 SDN Network에 대한 이해와 간단한 Flow 제어 예제를 다루고 있습니다.
  • 내용은 아래의 세 섹션으로 구성되어 있습니다.
  • SDN Controller 구축
  • Mininet(or switch setting) 구축
  • Use case: ONOS Intent Application을 사용한 flow 제어 및 이해
Clone this wiki locally