SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
01.
[ IDE ]
Visual Studio
[ Target Machine ]
Desktop(Ubuntu) ꓫ 4대
(Time based filter broker, Urgent broker, System Dashboard, Sensors Dashboard)
Raspberry pi 3 ꓫ 2대
Sensors ꓫ 2대
(불꽃감지센서, 가스 감지, 진동, 카메라, 온도, 습도)
[ Browser ]
Chrome
사전 준비
01.
사전 준비
▪ Source - mosquitto-1.4.14
▪ Ubuntu 16.04 LTS
▪ http://releases.ubuntu.com/16.04/
사전 준비
Urgent Broker02.
git 설치 및 Urgent Broker 다운
# sudo apt-get install git
$ git clone https://github.com/MQTT-HILIGHT/Mosquitto-Extention.git
컴파일에 필요한 패키지 설치
# sudo apt-get install uuid uuid-dev uuid-runtime uuid uuidcdef libwebsockets-dev openssl
build-essential libc-ares-dev libssl-dev libcurl4-openssl-dev libmysqlclient-dev
Urgent Broker02.
Urgent Broker 컴파일
$ cd Mosquitto-Extention/
$ make all WITH_TLS=no WITH_SRV=no REAL_WITH_MEMORY_TRACKING=no WITH_WEBSOCKETS=yes
$ cd src/
$ cc mosquitto.o bridge.o conf.o context.o database.o logging.o loop.o memory_mosq.o persist.o net.o
net_mosq.o read_handle.o read_handle_client.o read_handle_server.o read_handle_shared.o security.o
security_default.o send_client_mosq.o send_mosq.o send_server.o service.o subs.o sys_tree.o time_mosq.o
tls_mosq.o util_mosq.o websockets.o will_mosq.o -o mosquitto -ldl -lm -lrt -Wl,--dynamic-list=linker.syms -
luuid -lwebsockets -lpthread
$ ./mosquitto
-> 오브젝트 파일 정리
$ cd Mosquitto-Extention/
$ make clean
Urgent Broker Client03.
환경설정 (한 번만 하면 됨)
$ cd Mosquitto-Extention/
$ sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1
$ sudo ln -s /usr/local/lib/libpthread.so.0 /usr/lib/libpthread.so.0
구독자 컴파일
$ cd Mosquitto-Extention/
$ cd client/
$ ./mosquitto_sub –t "#" –h "localhost“
발행자 컴파일 (port 1883 은 노말, 1884는 긴급)
$ cd Mosquitto-Extention/
$ cd client/
$ ./mosquitto_pub -t "topic" -h "localhost" -p "1883" -m "Hello~“
Time Filter Broker04.
git 설치 및 Time Filter Broker 다운
# sudo apt-get install git
$ git clone https://github.com/MQTT-HILIGHT/Mosquitto_Time_based_filter.git
컴파일에 필요한 패키지 설치
# sudo apt-get install uuid uuid-dev uuid-runtime uuid uuidcdef libwebsockets-dev openssl
build-essential libc-ares-dev libssl-dev libcurl4-openssl-dev libmysqlclient-dev
Time Filter Broker04.
Time Filter Broker 컴파일
$ cd Mosquitto_Time_based_filter/
$ make all WITH_SRV=no REAL_WITH_MEMORY_TRACKING=no WITH_WEBSOCKETS=yes
$ cd src/
$ ./mosquitto
-> 오브젝트 파일 정리
$ cd Mosquitto-Extention/
$ make clean
Time Filter Broker Client05.
환경설정 (한 번만 하면 됨)
$ cd Mosquitto-Extention/
$ sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1
$ sudo ln -s /usr/local/lib/libpthread.so.0 /usr/lib/libpthread.so.0
구독자 컴파일
$ cd Mosquitto-Extention/
$ cd client/
$ ./mosquitto_sub –t "#" –h "localhost“ –F 100
발행자 컴파일
$ cd Mosquitto-Extention/
$ cd client/
$ ./mosquitto_pub -t "topic" -h "localhost" -p "1883" -m "Hello~“
06.
전처리 설명
1. c-ares (데비안 기반 시스템에서 libc-ares-dev) - 사용 안함 make WITH_SRV=no
2. libuuid (uuid-dev) - 사용 중지 make WITH_UUID=no
3. libwebsockets (libwebsockets-dev) - 사용 가능 make WITH_WEBSOCKETS=yes
4. openssl (데비안 기반 시스템에서는 libssl-dev) - 사용 안함 make WITH_TLS=no
5. xsltproc (데비안 기반 시스템에서는 xsltproc과 docbook-xsl) - 자식 소스에서 빌드 할 때만
필요합니다 - 사용 안 함 make WITH_DOCS=no
Appendix
Python Subscribers, Publishers01.
파일을 불러와 F5 로 실행 및 Shift+F6으로 커널 종료
Dashboard 환경 설정01.
대시보드의 차트 추가 버튼을 이용하여 ‘진리관 103호’와 같은 특정 차트 탭을 추가 할 수 있다.
Dashboard 환경 설정01.
‘진리관 103호’ 차트 탭이 추가되었으면 센서 추가 버튼을 이용하여 Topic을 설정한다.
Dashboard 환경 설정01.
FFServer 환경 설정01.
ffserver.conf
Port 8090
BindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 10000
CustomLog -
NoDaemon
<Feed feed.ffm>
File /tmp/feed.ffm
FileMaxSize 10M
</Feed>
<Stream TruthCenter/101/fire.mjpg>
Feed feed.ffm
Format mpjpeg
VideoFrameRate 4
VideoSize 600x480
VideoBitRate 80
# VideoQMin 1
# VideoQMax 100
VideoIntraOnly
NoAudio
Strict -1
</Stream>
<Feed feed2.ffm>
File /tmp/feed2.ffm
FileMaxSize 10M
</Feed>
<Stream TruthCenter/102/fire.mjpg>
Feed feed2.ffm
Format mpjpeg
VideoFrameRate 4
VideoSize 600x480
VideoBitRate 80
# VideoQMin 1
# VideoQMax 100
VideoIntraOnly
NoAudio
Strict -1
</Stream>
<Feed feed3.ffm>
File /tmp/feed3.ffm
FileMaxSize 10M
</Feed>
<Stream EngineeringCenter/101/fire.mjpg>
Feed feed3.ffm
Format mpjpeg
VideoFrameRate 4
VideoSize 600x480
VideoBitRate 80
# VideoQMin 1
# VideoQMax 100
VideoIntraOnly
NoAudio
Strict -1
</Stream>
# Server status URL
<Stream status.html>
Format status
# Only allow local people to get the status
</Stream>
# Just an URL redirect for index
<Redirect index.html>
# Redirect index.html to the appropriate site
URL http://www.ffmpeg.org/
</Redirect>
Q & A
감사합니다.

Contenu connexe

Tendances

Kubuntu 9.10에 Cubrid 8.2.0.2005 Linux
Kubuntu 9.10에 Cubrid 8.2.0.2005 LinuxKubuntu 9.10에 Cubrid 8.2.0.2005 Linux
Kubuntu 9.10에 Cubrid 8.2.0.2005 Linux
phpkorea
 
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
Chulgyu Shin
 

Tendances (20)

이것이 리눅스다 - 김종욱
이것이 리눅스다 - 김종욱이것이 리눅스다 - 김종욱
이것이 리눅스다 - 김종욱
 
20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한
 
도커없이 컨테이너 만들기 1편
도커없이 컨테이너 만들기 1편도커없이 컨테이너 만들기 1편
도커없이 컨테이너 만들기 1편
 
AWS EC2 AMI seminar(KELP 2011)
AWS EC2 AMI seminar(KELP 2011)AWS EC2 AMI seminar(KELP 2011)
AWS EC2 AMI seminar(KELP 2011)
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203
 
Kubuntu 9.10에 Cubrid 8.2.0.2005 Linux
Kubuntu 9.10에 Cubrid 8.2.0.2005 LinuxKubuntu 9.10에 Cubrid 8.2.0.2005 Linux
Kubuntu 9.10에 Cubrid 8.2.0.2005 Linux
 
Linux+정리
Linux+정리Linux+정리
Linux+정리
 
Race condition
Race conditionRace condition
Race condition
 
도커없이컨테이너 만들기 8편 - pid namespace
도커없이컨테이너 만들기 8편 - pid namespace도커없이컨테이너 만들기 8편 - pid namespace
도커없이컨테이너 만들기 8편 - pid namespace
 
Linux tutorial
Linux tutorialLinux tutorial
Linux tutorial
 
도커 없이 컨테이너 만들기 3편
도커 없이 컨테이너 만들기 3편도커 없이 컨테이너 만들기 3편
도커 없이 컨테이너 만들기 3편
 
Ffmpeg for android
Ffmpeg for androidFfmpeg for android
Ffmpeg for android
 
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져1주차   리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
1주차 리눅스의 이해 및 설치, 파티션과 파일 시스템, 부팅매니져
 
이것이 리눅스다
이것이 리눅스다이것이 리눅스다
이것이 리눅스다
 
[IoT] MAKE with Open H/W + Node.JS - 5th
[IoT] MAKE with Open H/W + Node.JS - 5th[IoT] MAKE with Open H/W + Node.JS - 5th
[IoT] MAKE with Open H/W + Node.JS - 5th
 
Linux Remote Connection
Linux Remote ConnectionLinux Remote Connection
Linux Remote Connection
 
cross compile
cross compilecross compile
cross compile
 
Introduction to Linux #1
Introduction to Linux #1Introduction to Linux #1
Introduction to Linux #1
 
우분투 커널 컴파일
우분투 커널 컴파일우분투 커널 컴파일
우분투 커널 컴파일
 
리눅스 스터디 1회차
리눅스 스터디 1회차리눅스 스터디 1회차
리눅스 스터디 1회차
 

Similaire à Linux ut-broker-install

망고100 보드로 놀아보자 6
망고100 보드로 놀아보자 6망고100 보드로 놀아보자 6
망고100 보드로 놀아보자 6
종인 전
 
망고100 보드로 놀아보자 17
망고100 보드로 놀아보자 17망고100 보드로 놀아보자 17
망고100 보드로 놀아보자 17
종인 전
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱
NAVER D2
 

Similaire à Linux ut-broker-install (20)

20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제
 
리눅스 드라이버 실습 #1
리눅스 드라이버 실습 #1리눅스 드라이버 실습 #1
리눅스 드라이버 실습 #1
 
도커 없이 컨테이너 만들기 2편
도커 없이 컨테이너 만들기 2편도커 없이 컨테이너 만들기 2편
도커 없이 컨테이너 만들기 2편
 
안드로이드 플랫폼 설명
안드로이드 플랫폼 설명안드로이드 플랫폼 설명
안드로이드 플랫폼 설명
 
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
 
이호민 - 우분투 환경에서의 임베디드 개발환경 구축 및 어플리케이션 개발 (2010Y06M24D)
이호민 - 우분투 환경에서의 임베디드 개발환경 구축 및 어플리케이션 개발 (2010Y06M24D)이호민 - 우분투 환경에서의 임베디드 개발환경 구축 및 어플리케이션 개발 (2010Y06M24D)
이호민 - 우분투 환경에서의 임베디드 개발환경 구축 및 어플리케이션 개발 (2010Y06M24D)
 
망고100 보드로 놀아보자 6
망고100 보드로 놀아보자 6망고100 보드로 놀아보자 6
망고100 보드로 놀아보자 6
 
CoreOS를 이용한 Docker 관리툴 소개
CoreOS를 이용한 Docker 관리툴 소개CoreOS를 이용한 Docker 관리툴 소개
CoreOS를 이용한 Docker 관리툴 소개
 
Deploying Hyperledger Fabric on Kubernetes.pptx
Deploying Hyperledger Fabric on Kubernetes.pptxDeploying Hyperledger Fabric on Kubernetes.pptx
Deploying Hyperledger Fabric on Kubernetes.pptx
 
오픈스택: 구석구석 파헤쳐보기
오픈스택: 구석구석 파헤쳐보기오픈스택: 구석구석 파헤쳐보기
오픈스택: 구석구석 파헤쳐보기
 
망고100 보드로 놀아보자 17
망고100 보드로 놀아보자 17망고100 보드로 놀아보자 17
망고100 보드로 놀아보자 17
 
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
리얼리눅스 제 1 회 세미나: "리눅스, 제대로 알고 코딩하자!"
 
[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱
 
Raspberry Pi Basic Usage
Raspberry Pi Basic UsageRaspberry Pi Basic Usage
Raspberry Pi Basic Usage
 
Hadoopcluster install in_centos_virtualbox
Hadoopcluster install in_centos_virtualboxHadoopcluster install in_centos_virtualbox
Hadoopcluster install in_centos_virtualbox
 
[Tizen Talk 2016 in Seoul] 바닥서부터 만들어보는 타이젠
[Tizen Talk 2016 in Seoul] 바닥서부터 만들어보는 타이젠[Tizen Talk 2016 in Seoul] 바닥서부터 만들어보는 타이젠
[Tizen Talk 2016 in Seoul] 바닥서부터 만들어보는 타이젠
 
OpenStack DevStack Install - 2부 (Multi-nodes)
OpenStack DevStack Install - 2부 (Multi-nodes)OpenStack DevStack Install - 2부 (Multi-nodes)
OpenStack DevStack Install - 2부 (Multi-nodes)
 
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
 
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
 

Plus de JUNHEEKIM27 (7)

Errc
ErrcErrc
Errc
 
Oasis
OasisOasis
Oasis
 
전략적 사고 : 2W1H
전략적 사고 : 2W1H전략적 사고 : 2W1H
전략적 사고 : 2W1H
 
ifcpp build guide
ifcpp build guideifcpp build guide
ifcpp build guide
 
Etri Retrospect
Etri RetrospectEtri Retrospect
Etri Retrospect
 
2018 Namyangju IoT Hackathon
2018 Namyangju IoT Hackathon2018 Namyangju IoT Hackathon
2018 Namyangju IoT Hackathon
 
2018 tech trends_and_present_report
2018 tech trends_and_present_report2018 tech trends_and_present_report
2018 tech trends_and_present_report
 

Linux ut-broker-install

  • 1.
  • 2. 01. [ IDE ] Visual Studio [ Target Machine ] Desktop(Ubuntu) ꓫ 4대 (Time based filter broker, Urgent broker, System Dashboard, Sensors Dashboard) Raspberry pi 3 ꓫ 2대 Sensors ꓫ 2대 (불꽃감지센서, 가스 감지, 진동, 카메라, 온도, 습도) [ Browser ] Chrome 사전 준비
  • 3. 01. 사전 준비 ▪ Source - mosquitto-1.4.14 ▪ Ubuntu 16.04 LTS ▪ http://releases.ubuntu.com/16.04/ 사전 준비
  • 4. Urgent Broker02. git 설치 및 Urgent Broker 다운 # sudo apt-get install git $ git clone https://github.com/MQTT-HILIGHT/Mosquitto-Extention.git 컴파일에 필요한 패키지 설치 # sudo apt-get install uuid uuid-dev uuid-runtime uuid uuidcdef libwebsockets-dev openssl build-essential libc-ares-dev libssl-dev libcurl4-openssl-dev libmysqlclient-dev
  • 5. Urgent Broker02. Urgent Broker 컴파일 $ cd Mosquitto-Extention/ $ make all WITH_TLS=no WITH_SRV=no REAL_WITH_MEMORY_TRACKING=no WITH_WEBSOCKETS=yes $ cd src/ $ cc mosquitto.o bridge.o conf.o context.o database.o logging.o loop.o memory_mosq.o persist.o net.o net_mosq.o read_handle.o read_handle_client.o read_handle_server.o read_handle_shared.o security.o security_default.o send_client_mosq.o send_mosq.o send_server.o service.o subs.o sys_tree.o time_mosq.o tls_mosq.o util_mosq.o websockets.o will_mosq.o -o mosquitto -ldl -lm -lrt -Wl,--dynamic-list=linker.syms - luuid -lwebsockets -lpthread $ ./mosquitto -> 오브젝트 파일 정리 $ cd Mosquitto-Extention/ $ make clean
  • 6. Urgent Broker Client03. 환경설정 (한 번만 하면 됨) $ cd Mosquitto-Extention/ $ sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1 $ sudo ln -s /usr/local/lib/libpthread.so.0 /usr/lib/libpthread.so.0 구독자 컴파일 $ cd Mosquitto-Extention/ $ cd client/ $ ./mosquitto_sub –t "#" –h "localhost“ 발행자 컴파일 (port 1883 은 노말, 1884는 긴급) $ cd Mosquitto-Extention/ $ cd client/ $ ./mosquitto_pub -t "topic" -h "localhost" -p "1883" -m "Hello~“
  • 7. Time Filter Broker04. git 설치 및 Time Filter Broker 다운 # sudo apt-get install git $ git clone https://github.com/MQTT-HILIGHT/Mosquitto_Time_based_filter.git 컴파일에 필요한 패키지 설치 # sudo apt-get install uuid uuid-dev uuid-runtime uuid uuidcdef libwebsockets-dev openssl build-essential libc-ares-dev libssl-dev libcurl4-openssl-dev libmysqlclient-dev
  • 8. Time Filter Broker04. Time Filter Broker 컴파일 $ cd Mosquitto_Time_based_filter/ $ make all WITH_SRV=no REAL_WITH_MEMORY_TRACKING=no WITH_WEBSOCKETS=yes $ cd src/ $ ./mosquitto -> 오브젝트 파일 정리 $ cd Mosquitto-Extention/ $ make clean
  • 9. Time Filter Broker Client05. 환경설정 (한 번만 하면 됨) $ cd Mosquitto-Extention/ $ sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1 $ sudo ln -s /usr/local/lib/libpthread.so.0 /usr/lib/libpthread.so.0 구독자 컴파일 $ cd Mosquitto-Extention/ $ cd client/ $ ./mosquitto_sub –t "#" –h "localhost“ –F 100 발행자 컴파일 $ cd Mosquitto-Extention/ $ cd client/ $ ./mosquitto_pub -t "topic" -h "localhost" -p "1883" -m "Hello~“
  • 10. 06. 전처리 설명 1. c-ares (데비안 기반 시스템에서 libc-ares-dev) - 사용 안함 make WITH_SRV=no 2. libuuid (uuid-dev) - 사용 중지 make WITH_UUID=no 3. libwebsockets (libwebsockets-dev) - 사용 가능 make WITH_WEBSOCKETS=yes 4. openssl (데비안 기반 시스템에서는 libssl-dev) - 사용 안함 make WITH_TLS=no 5. xsltproc (데비안 기반 시스템에서는 xsltproc과 docbook-xsl) - 자식 소스에서 빌드 할 때만 필요합니다 - 사용 안 함 make WITH_DOCS=no Appendix
  • 11.
  • 12. Python Subscribers, Publishers01. 파일을 불러와 F5 로 실행 및 Shift+F6으로 커널 종료
  • 13.
  • 14. Dashboard 환경 설정01. 대시보드의 차트 추가 버튼을 이용하여 ‘진리관 103호’와 같은 특정 차트 탭을 추가 할 수 있다.
  • 15. Dashboard 환경 설정01. ‘진리관 103호’ 차트 탭이 추가되었으면 센서 추가 버튼을 이용하여 Topic을 설정한다.
  • 17.
  • 18. FFServer 환경 설정01. ffserver.conf Port 8090 BindAddress 0.0.0.0 MaxHTTPConnections 2000 MaxClients 1000 MaxBandwidth 10000 CustomLog - NoDaemon <Feed feed.ffm> File /tmp/feed.ffm FileMaxSize 10M </Feed> <Stream TruthCenter/101/fire.mjpg> Feed feed.ffm Format mpjpeg VideoFrameRate 4 VideoSize 600x480 VideoBitRate 80 # VideoQMin 1 # VideoQMax 100 VideoIntraOnly NoAudio Strict -1 </Stream> <Feed feed2.ffm> File /tmp/feed2.ffm FileMaxSize 10M </Feed> <Stream TruthCenter/102/fire.mjpg> Feed feed2.ffm Format mpjpeg VideoFrameRate 4 VideoSize 600x480 VideoBitRate 80 # VideoQMin 1 # VideoQMax 100 VideoIntraOnly NoAudio Strict -1 </Stream> <Feed feed3.ffm> File /tmp/feed3.ffm FileMaxSize 10M </Feed> <Stream EngineeringCenter/101/fire.mjpg> Feed feed3.ffm Format mpjpeg VideoFrameRate 4 VideoSize 600x480 VideoBitRate 80 # VideoQMin 1 # VideoQMax 100 VideoIntraOnly NoAudio Strict -1 </Stream> # Server status URL <Stream status.html> Format status # Only allow local people to get the status </Stream> # Just an URL redirect for index <Redirect index.html> # Redirect index.html to the appropriate site URL http://www.ffmpeg.org/ </Redirect>