"Mobius"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
잔글 (→nCube 설치) |
잔글 (→&Cube 설치) |
||
(같은 사용자의 중간 판 2개는 보이지 않습니다) | |||
150번째 줄: | 150번째 줄: | ||
* Node.js 8.9.4 | * Node.js 8.9.4 | ||
+ | * npm 6.4.1 | ||
# yum list | grep nodejs | # yum list | grep nodejs | ||
168번째 줄: | 169번째 줄: | ||
/usr/bin/rm CHANGELOG.md LICENSE README.md | /usr/bin/rm CHANGELOG.md LICENSE README.md | ||
/usr/bin/cp -R * /usr/local/ | /usr/bin/cp -R * /usr/local/ | ||
+ | |||
+ | npm i -g npm | ||
+ | |||
node -v | node -v | ||
npm -v | npm -v | ||
+ | |||
+ | === &Cube 설치 === | ||
+ | |||
+ | mkdir -p /work/install | ||
+ | cd /work/install | ||
+ | wget https://codeload.github.com/IoTKETI/nCube-Thyme-Nodejs/zip/2.3.2 | ||
+ | |||
+ | mv 2.3.2 nCube-Thyme-Nodejs-2.3.2.zip | ||
+ | unzip nCube-Thyme-Nodejs-2.3.2.zip | ||
+ | |||
+ | mkdir -p /work/appl | ||
+ | mv nCube-Thyme-Nodejs-2.3.2 /work/appl/ncube | ||
+ | |||
+ | cd /work/appl/ncube | ||
+ | npm install | ||
+ | |||
+ | vi conf.js | ||
+ | cse.host = 'scada.obcon.co.kr'; | ||
+ | cse.port = '7579'; | ||
+ | cse.name = 'Mobius'; | ||
+ | cse.id = '/Mobius2' | ||
+ | cse.mqttport = '1883'; | ||
+ | cse.wsport = '7577'; | ||
+ | |||
+ | ae.name = 'light'; | ||
+ | ae.appid = 'light'; | ||
+ | ae.port = '9727'; | ||
+ | ae.bodytype = 'json'; | ||
+ | |||
+ | # vi aei.json | ||
+ | # "id": "S" #--- AE ID를 만들기 위한 prefix | ||
+ | |||
+ | node thyme.js | ||
== 참고 문헌 == | == 참고 문헌 == |
2018년 9월 28일 (금) 15:24 기준 최신판
Mobius는 전자부품연구원이 개발한 oneM2M 기반의 IoT 소프트웨어 이다.
- 홈페이지 : Mobius GitHub]
- 가이드
- 커뮤니티
목차
Mobius 개요
연혁
- 1.0 : 2015년 1월
- 2.0 : 2017년 7월
CentOS에서 Mobius 설치
VirtualBox 가상 서버 생성
mkdir -p /work/vagrant/OBCon-SCADA cd /work/vagrant/OBCon-SCADA vi Vagrantfile Vagrant.configure("2") do |config| config.vm.box = "centos/7" config.vm.network "forwarded_port", guest: 7577, host: 7577 config.vm.network "forwarded_port", guest: 7578, host: 7578 config.vm.network "forwarded_port", guest: 7579, host: 7579 config.vm.network "forwarded_port", guest: 7582, host: 7582 config.vm.network "forwarded_port", guest: 1883, host: 1883 config.vm.network "forwarded_port", guest: 8883, host: 8883 config.vm.network "forwarded_port", guest: 3306, host: 3306 config.vm.network "forwarded_port", guest: 80, host: 80 config.vm.network "forwarded_port", guest: 443, host: 443 config.vm.network "forwarded_port", guest: 22, host: 2022 config.vm.provider "virtualbox" do |vb| vb.name = "SuiteCRM" vb.memory = "3072" vb.cpus = "4" end end vagrant init vagrant up vagrant ssh
- SSH 접속을 위한 Private key 파일 : /work/vagrant/OBCon-SCADA/.vagrant/machines/default/virtualbox/private_key
사전 준비 사항
- CentOS 7 초기 환경 설정
- MariaDB 설치
기타 준비 사항
Mosquitto 설치
yum -y install mosquitto mosquitto-devel php71-php-pecl-mosquitto systemctl enable mosquitto.service systemctl restart mosquitto.service systemctl status mosquitto.service #--- Mosquitto 설치 확인 mosquitto_sub -h localhost -t /mytopic/1 mosquitto_pub -h localhost -t /mytopic/1 -m "Hello MQTT test" vi /etc/mosquitto/mosquitto.conf listener 8883 #--- SSL 적용시 사용 cafile /etc/mosquitto/ca_certificates/ca-crt.pem certfile /etc/mosquitto/certs/server-crt.pem keyfile /etc/mosquitto/certs/server-key.pem password_file /etc/mosquitto/pwfile.example #--- 인증용 Password 파일 acl_file /etc/mosquitto/aclfile.example #--- ACL 파일
Mobius 설치
#--- Node.js 설치 yum -y install nodejs #--- Mobius 설치 ( https://github.com/IoTKETI/Mobius ) #--- 설치 파일을 다운로드하여 /work/appl/mobius 폴더에 저장 한다. mkdir -p /work/install cd /work/install wget https://codeload.github.com/IoTKETI/Mobius/zip/master -O Mobius-master.zip unzip Mobius-master.zip mkdir -p /work/appl mv Mobius-master mobius mv mobius /work/appl #--- Mobius 데이터베이스를 생성하고 환경을 설정 한다. cd /work/appl/mobius npm install mysql -uroot -p mysql #--- mobius 사용자 생성, mobiusdb 데이터베이스 생성 show databases; create database mobiusdb; grant all privileges on mobiusdb.* to mobius@localhost identified by '비빌번호'; flush privileges; select Host, User, Password from user order by User, Host; select Host, Db, User from db order by User, Db, Host; exit mysql -uroot -p mobiusdb < mobius/mobiusdb.sql mysql -umobius -p mobiusdb show tables; exit vi conf.js #--- mobius.js 파일 참조 { "csebaseport": "7579", "dbuser": "mobius", "dbpass": "비밀번호" } vi mobius.js global.usedbhost = 'localhost'; global.usedbuser = conf.dbuser; global.usedbpass = conf.dbpass; global.usesecure = 'enable'; #--- SSL 적용시 #--- SSL 적용시 /work/appl/mobius 폴더에 ca-crt.pem, server-crt.pem, server-key.pem 파일을 생성 한다. vi app.js #--- Database User 지정 db.connect(usedbhost, 3306, usedbuser, usedbpass, function (rsc) { #--- 435 line db.connect(usedbhost, 3306, usedbuser, usedbpass, function (rsc) { #--- 491 line db.connect(usedbhost, 3306, usedbuser, usedbpass, function (rsc) { #--- 523 line nohup node mobius.js &
설치 테스트
- http://developers.iotocean.org/archives/module/onem2m-api-testing 사이트에서 "DOWNLOAD" 메뉴를 선택 한다.
- "PostManScript-v2.0.zip" 링크를 선택하여 "oneM2M-API-Testing-2.0.0.zip" 파일을 다운로드 한다.
- https://github.com/IoTKETI/oneM2M-API-Testing
- wget https://codeload.github.com/IoTKETI/oneM2M-API-Testing/zip/v2.0.0 -O oneM2M-API-Testing-2.0.0.zip
- 다운로드 받은 파일을 Postman을 실행한 후 "Import" 메뉴를 사용하여 등록 한다.
- 우측 상단에 있는 "Management Environment"를 선택 한다.
- "Add" 버튼을 눌러 "OBCon-Mobius"를 추가 한다.
- mp_url : http://scada.obcon.co.kr:7579
- cb : Mobius
- "OBCon-Mobius" Environment를 선택한 후 URL별로 테스트를 진행 한다
Rasberry Pi에 &Cube 설치
Node.js 설치
- Node.js 8.9.4
- npm 6.4.1
# yum list | grep nodejs # yum -y install nodejs yum -y install which wget uname -m #--- ARM 아키텍처 확인 mkdir -p /work/install cd /work/install #--- https://nodejs.org/dist/ # wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-armv7l.tar.xz # tar -xvf node-v10.9.0-linux-armv7l.tar.xz # cd node-v10.9.0-linux-armv7l wget https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-armv7l.tar.xz tar -xvf node-v8.9.4-linux-armv7l.tar.xz cd node-v8.9.4-linux-armv7l /usr/bin/rm CHANGELOG.md LICENSE README.md /usr/bin/cp -R * /usr/local/ npm i -g npm node -v npm -v
&Cube 설치
mkdir -p /work/install cd /work/install wget https://codeload.github.com/IoTKETI/nCube-Thyme-Nodejs/zip/2.3.2 mv 2.3.2 nCube-Thyme-Nodejs-2.3.2.zip unzip nCube-Thyme-Nodejs-2.3.2.zip mkdir -p /work/appl mv nCube-Thyme-Nodejs-2.3.2 /work/appl/ncube cd /work/appl/ncube npm install vi conf.js cse.host = 'scada.obcon.co.kr'; cse.port = '7579'; cse.name = 'Mobius'; cse.id = '/Mobius2' cse.mqttport = '1883'; cse.wsport = '7577'; ae.name = 'light'; ae.appid = 'light'; ae.port = '9727'; ae.bodytype = 'json'; # vi aei.json # "id": "S" #--- AE ID를 만들기 위한 prefix node thyme.js