IoT ํ๋ซํผ ์ ํ์ ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๋ณธ์ ์ธ MQTT ๋ฐ HTTPS ๋ฐ์ดํฐ ์ฐ๊ฒฐ์ ์ ๊ณตํฉ๋๋ค. ๋ํ ๊ธฐ๊ธฐ๋ฅผ ํ๋ก๋น์ ๋ํ ์ ์์ผ๋ฉฐ ์ธ์ฆ ๋ฐ ๊ด๋ฆฌ, ์๊ฒฉ ๋ถ์ ์คํ ๋ฆฌ์ง ๋ฐ ์๊ฐํ, ๋ฐ์ดํฐ ์ฒ๋ฆฌ, ์๋ฆผ์ ์ ๊ณตํฉ๋๋ค. ๋ ๋ฆฝํ MQTT ๋ธ๋ก์ปค๊ฐ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ถฉ์กฑํ๊ธฐ์ ๋ถ์กฑํ๊ณ ๋ ์์ ํ IoT ํ๋ซํผ ์ ํ์ด ํ์ํ ๊ฒฝ์ฐ IoT ํ๋ซํผ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. IoT ํ๋ซํผ์ ์ด๊ธฐ์ข ๊ธฐ๊ธฐ ๋ชจ์์ ๊ด๋ฆฌํ ์ ์๋ ํตํฉ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด ์ธํฐํ์ด์ค๋ ์ฌ๋ฌ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์ํ๋ฉฐ, IoT ํ๋ซํผ๊ณผ ๋ ๋ฆฝํ MQTT ๋ธ๋ก์ปค์ ์ฃผ์ ์ฐจ์ด์ ์ ๋๋ค. ์ด ๋ฌธ์์์๋ Google Cloud์ IoT ํ๋ซํผ ์ ํ ์ํคํ ์ฒ๋ฅผ ๋ฐฐํฌํ๊ธฐ ์ ์ ๊ณ ๋ คํด์ผ ํ ๊ธฐ๋ณธ์ ์ธ ์ํคํ ์ฒ ๊ณ ๋ ค์ฌํญ๊ณผ ๊ถ์ฅ์ฌํญ์ ์ค๋ช ํฉ๋๋ค.
์ด ๋ฌธ์๋ Google Cloud์ IoT ์ํคํ ์ฒ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ๋ฌธ์ ์๋ฆฌ์ฆ์ ์ผ๋ถ์ ๋๋ค. ์ด ์๋ฆฌ์ฆ์ ๋ค๋ฅธ ๋ฌธ์์๋ ๋ค์์ด ํฌํจ๋ฉ๋๋ค.
- Google Cloud์ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ ์ํคํ ์ฒ ๊ฐ์
- Google Cloud์ ๋ ๋ฆฝํ MQTT ๋ธ๋ก์ปค ์ํคํ ์ฒ
- Google Cloud์ IoT ํ๋ซํผ ์ ํ ์ํคํ ์ฒ(์ด ๋ฌธ์)
- Google Cloud์์ IoT ๋ฐฑ์๋ ์คํ ๊ถ์ฅ์ฌํญ
- Google Cloud์ ๋ํ Pub/Sub ์ํคํ ์ฒ์ ๊ธฐ๊ธฐ
- ์์ง/๋ฒ ์ด๋ฉํ ์์คํ ๋ฐ ์๋ฒ๋ฅผ ์๋์ผ๋ก ํ๋ก๋น์ ๋ ๋ฐ ๊ตฌ์ฑํ๊ธฐ ์ํ ๊ถ์ฅ์ฌํญ
๋ค์ ๋ค์ด์ด๊ทธ๋จ์ Google Cloud์์ ์คํ๋๋ ์ผ๋ฐ IoT ํ๋ซํผ ์ ํ์ด ํฌํจ๋ ์ํคํ ์ฒ์ ์์๋ฅผ ๋ณด์ฌ์ค๋๋ค.
์์ ๋ค์ด์ด๊ทธ๋จ๊ณผ ๊ฐ์ด IoT ํ๋ซํผ์ ๊ธฐ๊ธฐ ์ฐ๊ฒฐ์ ์ํด MQTT ๋ธ๋ก์ปค ๋๋ ์๋ํฌ์ธํธ๋ฅผ ๋ฐฐํฌํฉ๋๋ค. IoT ํ๋ซํผ์ ์์ง ๊ธฐ๊ธฐ์ ํธ๋ํฝ์ ๋ถ์ฐํ๋๋ก ์ธ๋ถ ํ๋ก์ ๋คํธ์ํฌ ๋ถํ ๋ถ์ฐ๊ธฐ์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ์ถ๊ฐ IoT ์ ํ๋ฆฌ์ผ์ด์ ์ Pub/Sub ๋๋ Dataflow MQTT ์ปค๋ฅํฐ๋ฅผ ์ฌ์ฉํ์ฌ IoT ํ๋ซํผ์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
IoT ํ๋ซํผ์ ๊ธฐ๊ธฐ ๊ด๋ฆฌ ์๋น์ค ๋ชจ์์ ์ ๊ณตํฉ๋๋ค. ๋ค์ด์ด๊ทธ๋จ์ ํ์๋์๋ฏ์ด ์ด๋ฌํ ์๋น์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ๊ธฐ๊ธฐ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ์ ์ฅ์
- ๊ท์น ์์ง
- ๊ธฐ๊ธฐ ์ธ์ฆ ๋ฐ ์น์ธ
- ๊ธฐ๊ธฐ ๊ตฌ์ฑ ๊ด๋ฆฌ
- ๊ธฐ๊ธฐ ๋ ์ง์คํธ๋ฆฌ
- ๊ธฐ๊ธฐ ์ ๋ฐ์ดํธ ๊ด๋ฆฌ
IoT ํ๋ซํผ ์ ํ์๋ ์ผ๋ฐ์ ์ผ๋ก ๋์งํธ ํธ์ ๊ธฐ๋ฅ, ๋ก์ฐ ์ฝ๋ ๊ฐ๋ฐ ์ธํฐํ์ด์ค, ์๋ฆผ ๊ธฐ๋ฅ, ๊ธฐํ ๋ถ์ ๊ธฐ๋ฅ๊ณผ ๊ฐ์ ์๋น์ค๊ฐ ํฌํจ๋ฉ๋๋ค.
์ํคํ ์ฒ ๊ณ ๋ ค์ฌํญ ๋ฐ ์ ํ
๋ค์ ์น์ ์์๋ IoT ํ๋ซํผ ์ ํ ์ํคํ ์ฒ๋ฅผ ์ํ ์ํคํ ์ฒ ์ ํ๊ณผ ์ด๋ฌํ ์ ํ์ด ๋ฏธ์น๋ ์ํฅ์ ์ค๋ช ํฉ๋๋ค.
์์ง ์๋ํฌ์ธํธ
๋๋ถ๋ถ์ ์์ฉ IoT ํ๋ซํผ ์ ํ๋ฆฌ์ผ์ด์ ์๋ MQTT ์๋ํฌ์ธํธ์ ์ผ๋ฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ์์์ ๋ฐ์ดํฐ ์์ง์ฉ HTTPS ์๋ํฌ์ธํธ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
MQTT
IoT ํ๋ซํผ์ ๋ค์ ๋ฐฉ๋ฒ ์ค ํ๋๋ก MQTT ์๋ํฌ์ธํธ๋ฅผ ๊ตฌํํฉ๋๋ค.
- MQTT์ ๋ค๋ฅธ ๋ฉ์์ง ์๋น์ค ๊ฐ ์ปค๋ฅํฐ
- ์ ์ฒด MQTT ์ฌ์์ ๊ตฌํํ๋ MQTT ๋ธ๋ก์ปค
์์ฉ IoT ํ๋ซํผ์ ํ๊ฐํ ๋๋ ์ฌ์ฉ ์ฌ๋ก์ ๋ฏธ์น๋ ์ํฅ์ ํ๋จํ ์ ์๋๋ก ๊ณต๊ธ์ ์ฒด๊ฐ ์ ํ์ ์ ํํ ์ด์ ์ ๊ทผ ๋ฐฉ์์ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
๊ฒฝ์ฐ์ ๋ฐ๋ผ MQTT ์๋ํฌ์ธํธ๋ Kafka ๋๋ Pub/Sub์ ๊ฐ์ ๋ฐฑ์๋ ๋ฉ์์ง ์๋น์ค์๋ง MQTT ํด๋ผ์ด์ธํธ๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค. ์ด๋ฌํ ์ ํ์ ์๋ํฌ์ธํธ๋ ์ผ๋ฐ์ ์ผ๋ก ์ ์ฒด MQTT ํ๋กํ ์ฝ ์ฌ์์ ๊ตฌํํ์ง ์์ผ๋ฉฐ, QoS ์์ค 1 ๋ฐ 2 ๋๋ ๊ณต์ ๊ตฌ๋ ๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ํฌํจํ์ง ์์ ๋๊ฐ ์ข ์ข ์์ต๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฅ์ ์ ๋ณ๋์ MQTT ๋ธ๋ก์ปค ์ ํ๋ฆฌ์ผ์ด์ ์ด ์์ผ๋ฏ๋ก IoT ํ๋ซํผ์ ๋ณต์ก์ฑ์ด ์ค์ด๋ ๋ค๋ ๊ฒ์ ๋๋ค. ์ด์ ๋น์ฉ์ด ๋ ๋ฎ๊ณ ํ๋ซํผ์ด ๋ณ๋์ MQTT ๋ธ๋ก์ปค๋ฅผ ์ฌ์ฉํ ๋๋ณด๋ค ์ ์ง๋ณด์๊ฐ ๊ฐ๋จํฉ๋๋ค. ํ์ง๋ง ๊ณ ๊ธ MQTT ํ๋กํ ์ฝ ๊ธฐ๋ฅ์ ๋ํ ์ง์์ด ์ค๊ธฐ ๋๋ฌธ์ ์ด ์ ๊ทผ ๋ฐฉ์์ ์ ์ฒด MQTT ์ฌ์์ ๊ตฌํํ๋ ๋ ๋ฆฝํ MQTT ๋ธ๋ก์ปค๋ณด๋ค MQTT ๋ฉ์์ง ์ ์ก์ ์ ์ฐ์ฑ๊ณผ ๊ธฐ๋ฅ์ด ์ ์ต๋๋ค.
๋ค๋ฅธ IoT ํ๋ซํผ์ ์ด ๋ฌธ์์ ์ํคํ ์ฒ ์์์ ํ์๋ ๊ฒ์ฒ๋ผ ํ๋ซํผ์ ์ผ๋ถ๋ก ์์ ํ MQTT ๋ธ๋ก์ปค๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด ๋ธ๋ก์ปค๋ ๊ธฐ์กด ์คํ์์ค ๋ธ๋ก์ปค ์ค ํ๋์ด๊ฑฐ๋ ๋ ์ ๋ธ๋ก์ปค๋ฅผ ๊ตฌํํ ๊ฒ์ผ ์ ์์ต๋๋ค. ์ ์ฒด MQTT ๋ธ๋ก์ปค๋ ์์์ ์ค๋ช ํ ์ ์ฒด ์๋ฐฉํฅ MQTT ๊ธฐ๋ฅ์ ์ ๊ณตํ์ง๋ง ์ ์ฒด ๋ธ๋ก์ปค๋ IoT ํ๋ซํผ ๊ด๋ฆฌ์ ๋ณต์ก์ฑ๊ณผ ์ด์ ๋น์ฉ์ ์ถ๊ฐํ ์ ์์ต๋๋ค.
HTTPS ๋ฐ ๊ธฐํ ๋ณด์กฐ ํ๋กํ ์ฝ
MQTT ์ธ์๋ ๋ง์ IoT ํ๋ซํผ์ด ์ด ๋ฌธ์์์ ์ค๋ช ํ๋ ๊ธฐ๋ณธ ์ํคํ ์ฒ์ ํ์๋ ๊ฒ๋ณด๋ค ๋ ๋ง์ ๋ฐ์ดํฐ ์์ง ์๋ํฌ์ธํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
HTTPS๋ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ ์ฌ์ฉ ์ฌ๋ก์์ MQTT๋ฅผ ๋์ฒดํ๋ ์ผ๋ฐ์ ์ธ ํ๋กํ ์ฝ์ ๋๋ค. MQTT๋ณด๋ค ์ค๋ฒํค๋๊ฐ ๋์ง๋ง ํด๋์ ํ์ ๊ฐ์ ํด๋๊ธฐ๊ธฐ, ์น๋ธ๋ผ์ฐ์ , ๊ธฐํ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ ๊ด๋ฒ์ํ๊ฒ ์ง์๋ฉ๋๋ค. ํน์ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์์ฃผ ์ฌ์ฉ๋๋ฉฐ Eclipse Hono์ ๊ฐ์ ์คํ์์ค ํ๋ซํผ๊ณผ ์ฌ๋ฌ ์์ ์ฉ ์ ํ์์ ์ง์๋ฉ๋๋ค.
์ ์ฝ์ด ์๋ ๋ง์ ๊ธฐ๊ธฐ ์ ํ๋ฆฌ์ผ์ด์ ์ด RFC 7252์ ์ ์๋ CoAP(Constrained Application Protocol)์ MQTT ๋์์ผ๋ก ์ฌ์ฉํฉ๋๋ค. CoAP๋ ๋ด์ฅํ ๊ธฐ๊ธฐ ๋ฐ ์ผ์๋ฅผ ์ํ ์ค๋ฒํค๋๊ฐ ๋ฎ๊ณ ์ฌ์ฉ ๊ณต๊ฐ์ด ์ ์ ํด๋ผ์ด์ธํธ๋ฅผ ๋์์ผ๋ก ํฉ๋๋ค. ๋ง์ ์์ฉ IoT ํ๋ซํผ ์ ํ๋ฆฌ์ผ์ด์ ์์๋ CoAP ์๋ํฌ์ธํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋ถํ ๋ถ์ฐ
์ํคํ ์ฒ์ ๊ฐ์ฅ ์ ํฉํ ๋ถํ ๋ถ์ฐ๊ธฐ ์ ํ์ ๋ํ ์์ธํ ๋ด์ฉ์ Google Cloud์ ๋ ๋ฆฝํ MQTT ๋ธ๋ก์ปค ์ํคํ ์ฒ์ ๋ถํ ๋ถ์ฐ ์น์ ์ ์ฐธ์กฐํ์ธ์. ์ด ๊ณ ๋ ค์ฌํญ์ ์ด ์ฌ๋ก์๋ ์ ์ฉ๋ฉ๋๋ค.
๊ธฐ๊ธฐ ์ธ์ฆ ๋ฐ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ด๋ฆฌ
๊ธฐ๊ธฐ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ฐ ์ธ์ฆ ๊ด๋ฆฌ๋ IoT ํ๋ซํผ ์ด์์ ํต์ฌ ์์์ ๋๋ค. ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ์์ ์ง์๋๋ ์ธ์ฆ ๋ฐฉ๋ฒ์ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ๊ธฐ๊ธฐ ํผ ํฉํฐ์ ๋ฐ๋ผ ํฌ๊ฒ ๋ค๋ฆ ๋๋ค. ๋์ ์ฌ์ฉ ์ฌ๋ก์ ์ ํฉํ ์ธ์ฆ ๋ฐฉ๋ฒ์ ์ ํํ๊ณ ์ ํํ ์ธ์ฆ ์คํค๋ง๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌํํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
๋ ๋ฆฝํ MQTT ๋ธ๋ก์ปค์ ๋ฌ๋ฆฌ IoT ํ๋ซํผ์ ๊ธฐ๊ธฐ ID ๋ฐ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ๊ด๋ฆฌํ๋ ํตํฉ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋๋ถ๋ถ์ IoT ํ๋ซํผ์ ์ธ์ฆ์ X.509 ํด๋ผ์ด์ธํธ ์ธ์ฆ์ ์ธ์ฆ, (JWT 2.0๊ณผ ๊ฒฐํฉํ ๋๊ฐ ๋ง์) JWT ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ, ์ฌ์ฉ์ ์ด๋ฆ ๋ฐ ๋น๋ฐ๋ฒํธ ์ธ์ฆ์ ์ฌ์ฉํฉ๋๋ค. ์ผ๋ถ ํ๋ซํผ์ ์ธ๋ถ LDAP ์ธ์ฆ ์ ๊ณต์ ์ฒด์์ ํตํฉ๋ ์ง์ํฉ๋๋ค.
์ด๋ฌํ ์คํค๋ง๋ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ์์ ๋ ์ ์ ๋ฆฌ์์ค๋ฅผ ํ์๋ก ํ๋ฏ๋ก ์ผ๋ถ ์ ํ๋ ๊ธฐ๊ธฐ์ ๊ฒฝ์ฐ JWT ๋๋ ์ฌ์ฉ์ ์ด๋ฆ ๋ฐ ๋น๋ฐ๋ฒํธ ์ธ์ฆ์ด ๋ ์ ํฉํ ์ ์์ต๋๋ค. JWT ๋๋ ์ฌ์ฉ์ ์ด๋ฆ ๋ฐ ๋น๋ฐ๋ฒํธ ์ธ์ฆ์ ์ฌ์ฉํ ๋๋ ์ด๋ฌํ ์ธ์ฆ ๋ฐฉ๋ฒ์์๋ ์ํธํ๋ ์ฐ๊ฒฐ์ ์๊ตฌํ์ง ์๊ธฐ ๋๋ฌธ์ mTLS ์ธ์ฆ๊ณผ ๋ณ๋๋ก ๋คํธ์ํฌ ์ฐ๊ฒฐ์ ์ํธํํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ฐ๋ฉด์ X.509 ์ธ์ฆ์ ์ธ์ฆ์ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ์์ ๋ ๋ง์ ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํ์ง๋ง ์ผ๋ฐ์ ์ผ๋ก mTLS๋ก ์ํธํ๋ ์ฐ๊ฒฐ์์ ์ฌ์ฉ๋๋ฏ๋ก ๋์ ์์ค์ ๋ณด์์ ์ ๊ณตํฉ๋๋ค.
์ ์กฐ ์์ ์ ์์ง ๊ธฐ๊ธฐ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ํ๋ก๋น์ ๋ํ๋ ๊ฒ๋ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ ์ธ์ฆ ์คํค๋ง์์ ์ค์ํ ๋ถ๋ถ์ด์ง๋ง ์ด ๋ฌธ์์์๋ ๋ค๋ฃจ์ง ์์ต๋๋ค.
์ธ์ฆ ๋ฐ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๊ด๋ฆฌ์ ๋ํ ์์ธํ ๋ด์ฉ์ Google Cloud์์ IoT ๋ฐฑ์๋ ์คํ ๊ถ์ฅ์ฌํญ์ ์ฐธ์กฐํ์ธ์.
์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ ๊ด๋ฆฌํ๊ธฐ
์ผ๋ฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ๋ MQTT์ ๊ฐ์ ์์ง ์๋ํฌ์ธํธ ์ค ํ๋๋ฅผ ํตํด ์๊ฒฉ ๋ถ์ ์ด๋ฒคํธ ๋ฐ ์ํ ์ ๋ณด๋ฅผ ํ๋ซํผ์ ๊ฒ์ํฉ๋๋ค. ๋ฉํฐ ํ๋กํ ์ฝ IoT ํ๋ซํผ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ง์๋๋ ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ๊ธฐ๊ธฐ์์ ํต์ ํ ์ ์์ต๋๋ค.
์กฐ์ง์์ ๋ค์๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ด ์๋ IoT ํ๋ซํผ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
- ์ํํธ์จ์ด ๋ฐ ์์คํ ์ ๋ฐ์ดํธ: ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ์ ๋ํ ํ์จ์ด, ์ํํธ์จ์ด, ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ดํธ๋ฅผ ๋ฐฐํฌํ๊ณ ๋กค๋ฐฑํฉ๋๋ค. ์ด๋ฌํ ์ ๋ฐ์ดํธ์๋ ์ผ๋ฐ์ ์ผ๋ก ์ ๋ฐ์ดํธ ์์ฒด์ ์คํ ๋ฆฌ์ง์ ๊ด๋ฆฌ๋ ํฌํจ๋ฉ๋๋ค.
- ๊ตฌ์ฑ ์ ๋ฐ์ดํธ: ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ์ ๋ฐฐํฌ๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ฑ์ ์ ๋ฐ์ดํธ๋ฅผ ๋ฐฐํฌ, ์ ์ฅ, ๋กค๋ฐฑํฉ๋๋ค.
- ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด ๋ง๋ค๊ธฐ ๋ฐ ๊ด๋ฆฌ: ์๋ก์ด ๊ธฐ๊ธฐ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ๋ง๋ค๊ณ ์ฐ๊ฒฐ๋ ๊ธฐ๊ธฐ์ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ ์กํ๊ณ ๊ธฐ๊ธฐ ์ก์ธ์ค ์๋ ๋ฐ ํ๋์ ๊ฐ์ฌํ๋ฉฐ ์ ์์ ๋ณด์์ด ์นจํด๋๊ฑฐ๋ ๋ง๋ฃ๋ ์ฌ์ฉ์ ์ธ์ฆ ์ ๋ณด๋ฅผ ์ทจ์ํฉ๋๋ค.
- ๊ท์น ์์ง ๋ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ: ๋ฐ์ดํฐ ๊ธฐ๋ฐ ๊ท์น ๋ฐ ๊ธฐํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋จ๊ณ๋ฅผ ์ ์ํ๊ณ ์คํํฉ๋๋ค. ์ด ๊ธฐ๋ฅ์๋ ๊ท์น ๋ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ํ์ดํ๋ผ์ธ์ ์ ์ํ ์ ์๋ ๋ช ๊ฐ์ง ๋ก์ฐ ์ฝ๋ ์ธํฐํ์ด์ค ์ ํ์ด ํฌํจ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
๋ฐฑ์๋ ์ํฌ๋ก๋
๋๋ถ๋ถ์ IoT ํ๋ซํผ์ ๋ฐฑ์๋ ์ํฌ๋ก๋ ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฐ๊ฒฐํ ์ ์๊ฒ ํด์ฃผ๋ ์์ฒด ๋ด๋ถ ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง ๋ฐ ์ ์ก ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก AMQP, RabbitMQ, Kafka๊ฐ ๋ด๋ถ ๋ฐ์ดํฐ ์ ์ก์ ์ ๊ณตํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ชจ๋ Pub/Sub SDK๋ฅผ ์ฌ์ฉํ์ฌ Pub/Sub์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. PostgreSQL๊ณผ ๊ฐ์ ํตํฉ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ ์ฌ์ฉํ์ฌ ํ๋ซํผ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์๋ ์์ต๋๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ Cloud SQL, Firebase ๋๋ BigQuery์ ๊ฐ์ Cloud Storage ์ ํ ์ค ํ๋๋ฅผ ์ง์ ์ฌ์ฉํ๋๋ก IoT ํ๋ซํผ์ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
IoT ํ๋ซํผ์ ์์ ํ MQTT ๋ธ๋ก์ปค๊ฐ ์๋ ๊ฒฝ์ฐ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ํ๋ซํผ์ MQTT ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ๊ธฐ๊ธฐ์ ํต์ ํ ์๋ ์์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์์ MQTT๋ฅผ ์ง์ํ๋ ๊ฒฝ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ด ๊ตฌ๋ ์๋ก ๋ธ๋ก์ปค์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค. MQTT๊ฐ ์ง์๋์ง ์๋๋ค๋ฉด Apache Beam์์ ์ ๊ณตํ๋ MQTT ๋๋ผ์ด๋ฒ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. ์ด ๋๋ผ์ด๋ฒ๋ Dataflow ๋ฐ ๋ค๋ฅธ Beam ๋ฐฐํฌ์์ ์๋ฐฉํฅ ํตํฉ์ ์ง์ํฉ๋๋ค.
์ฌ์ฉ ์ฌ๋ก
๋ค์ ์น์ ์์๋ ๋ ๋ฆฝํ MQTT ๋ธ๋ก์ปค๋ Pub/Sub์ ๋ํ ์ง์ ์ฐ๊ฒฐ๋ณด๋ค IoT ํ๋ซํผ์ด ์ํคํ ์ฒ ์ ํ ์ต์ ์ผ๋ก ๋ ์ ํฉํ ๊ฒฝ์ฐ์ ์์ ์๋๋ฆฌ์ค๋ฅผ ์ค๋ช ํฉ๋๋ค.
์ค๋งํธ ์ดํ๋ผ์ด์ธ์ค ๊ด๋ฆฌ
์ฌ๋ฌ ์ค๋งํธ ์ดํ๋ผ์ด์ธ์ค๋ฅผ ๊ด๋ฆฌํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ IoT ํ๋ซํผ์ ์ ํฉํฉ๋๋ค. ์ด๋ฌํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์๋ก๋ ์๊ธฐ ์ธ์ฒ๊ธฐ ๋ฐ ์ปคํผ ๋ฉ์ด์ปค์ ๊ฐ์ ์ฃผ๋ฐฉ ๊ฐ์ ๊ด๋ฆฌ ํ๋ซํผ์ด ์์ต๋๋ค. ์ด๋ฌํ ๊ธฐ๊ธฐ๋ ์ผ๋ฐ์ ์ผ๋ก Wi-Fi๋ฅผ ํตํด ์ง์ ๋๋ ์ ์ ๋ ฅ ๋ธ๋ฃจํฌ์ค(BLE)๋ ๊ธฐํ ๋ก์ปฌ ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ ๋ก์ปฌ ๊ฒ์ดํธ์จ์ด๋ฅผ ํตํด ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ๊ฐ ๊ธฐ๊ธฐ์ ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ , ์ํํธ์จ์ด ์ ๋ฐ์ดํธ ๋ฐ ๋ณด์ ํจ์น๋ฅผ ๊ด๋ฆฌํ๊ณ , ๊ธฐ๊ธฐ ํ๋์ ์บก์ฒํ์ฌ ์ ์กฐ์ ์ฒด ๋ฐ ๊ณ ๊ฐ์๊ฒ ์ค์ ์ธํ ๋ฆฌ์ ์ค๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด์๋ IoT ํ๋ซํผ์ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ด ์ค์ํฉ๋๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ์ ๊ธฐ๋ณธ MQTT ๋ธ๋ก์ปค์ ๋ฒ์๋ฅผ ๋ฒ์ด๋ฉ๋๋ค. ์ฑ๊ณต์ ์ธ ์ค๋งํธ ์ดํ๋ผ์ด์ธ์ค ํ๋ซํผ์ ๋น๋ํ๋ ค๋ฉด ์ต์ํ ๊ธฐ๊ธฐ ์ ๋ณด ์ ์ฅ์, ๊ธฐ๊ธฐ ์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค, ์๊ฒฉ ๋ถ์ ๋ฐ์ดํฐ ์คํ ์ด, ๋ถ์ ์ธํฐํ์ด์ค๊ฐ ๋ชจ๋ ์์ด์ผ ํฉ๋๋ค.
๋ฌผ๋ฅ ๋ฐ ์ ์ ์ถ์
๋ฌผ๋ฅ ๋ฐ ์ ์ ์ถ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒฝ์ฐ IoT ํ๋ซํผ ์ ํ์ด ๊ธฐ๋ณธ MQTT ๋ธ๋ก์ปค๋ณด๋ค ๋ ๋ง์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฏ๋ก ์ด ์ฌ์ฉ ์ฌ๋ก์ ๋ ์ ํฉํฉ๋๋ค. ๋๊ท๋ชจ ์์ฐ์ ํ์ฌ ๋ฐ ๊ณผ๊ฑฐ ์ํ์ ์์น๋ฅผ ๋ชจ๋ํฐ๋งํ๋ ๊ฒ์ ๊ฐ๋ ฅํ ๊ธฐ๊ธฐ ์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ID ๊ด๋ฆฌ ์์คํ ์ ๋ฐ๋ผ ์ข์ฐ๋ฉ๋๋ค. ์ ์์ฐ์ด ๋ฐฐ์น๋๋ฉด ์ต๋ํ ๋ถํธ ์์ด ํ๋ซํผ์ ์ฐ๊ฒฐํ๊ณ ์์ฐ ์๋ช ์ฃผ๊ธฐ ๋์ ๋ชจ๋ํฐ๋งํด์ผ ํฉ๋๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ ํ์ง ์จ๋, ์ต๋, ๊ธฐ์ ๋๋ 3D ํฌ์ง์ ๋ ๋ฐ ๊ฐ์ ๋ฐ์ดํฐ ๋ฑ ์์ฐ์ ๋ํ ๊ธฐํ ์ผ์ ์ ๋ณด๋ฅผ ์์งํ์ฌ ์์์น ๋ชปํ ๋ณํ๋ ๊ฐ์๋ฅผ ๊ฐ์งํฉ๋๋ค. ์ด ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ถ์ํ ์ ์๋๋ก ์ฌ๋ฐ๋ฅธ ์์ฐ๊ณผ ์ฐ๊ฒฐํด์ผ ํ๋ฏ๋ก IoT ํ๋ซํผ์์ ์ ๊ณตํ๋ ๋ชจ๋ ๊ธฐ๋ฅ์ ๊ฐ์ถ ๊ธฐ๊ธฐ ๊ด๋ฆฌ๋ ์ค์ํ ๊ธฐ๋ฅ์ ๋๋ค.
๋ค์ ๋จ๊ณ
- Intelligent Products Essentials๋ฅผ ์ฌ์ฉํ์ฌ Google Cloud์์ ๊ธฐ๊ธฐ๋ฅผ ์ฐ๊ฒฐํ๊ณ IoT ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.
- ์์ง/๋ฒ ์ด๋ฉํ ์์คํ ๋ฐ ์๋ฒ๋ฅผ ์๋์ผ๋ก ํ๋ก๋น์ ๋ํ๊ณ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด์ธ์.
- ๊ทธ ๋ฐ์ ์ฐธ์กฐ ์ํคํ ์ฒ, ๋ค์ด์ด๊ทธ๋จ, ํํ ๋ฆฌ์ผ, ๊ถ์ฅ์ฌํญ์ ์์๋ณด๋ ค๋ฉด Cloud ์ํคํ ์ฒ ์ผํฐ๋ฅผ ํ์ธํ์ธ์.