Mobius
Mobius는 전자부품연구원이 개발한 oneM2M 기반의 IoT 소프트웨어 이다.
- 홈페이지 : Mobius GitHub]
목차
Mobius 개요
연혁
- 1.0 : 2015년 1월
- 2.0 : 2017년 7월
- https://github.com/IoTKETI/Mobius
- https://github.com/IoTKETI/Mobius/wiki/Mobius_v2.0.0_KR_Linux
- http://open-iot.net/board/mobius
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별로 테스트를 진행 한다