Nesnelerin İnterneti (IoT) ile Akıllı Sistemler -2 (Sunucu Kurulumu)
Yeniden Merhaba…
Bir önceki bölümde IoT nedir ? ve akıllı sistemler kurmak için gerekenleri sizlerle paylaşmıştım. Eğer birinci bölümü okumadıysanız buradan Nesnelerin İnterneti (IoT) ile Akıllı Sistemler -1 ulaşabilirsiniz…
Bu bölümde ise IoT Sunucu için gerekli bileşenleri ve bunların kurulumlarını ele alacağız. Öncelikle sunucu kurmak için izleyebileceğiniz iki yol var.
- Sunucuyu yerel bir alana kurmak. Bunun için alternatif birçok çözüm mevcut. Örneğin bilgisayarınıza Virtualbox indirerek Ubuntu işletim sistemini kurabilir ya da Raspberry Pi gibi benzer tek kartlı bilgisayarı kullanarak yine bu kurulumu gerçekleştirebilirsiniz.
- Bir diğer yöntem ise Ubuntu işletim sistemine sahip bir Bulut Sunucusu (Cloud Server) edinmek. Bu size işletim sistemi kurarken CPU, RAM gibi kaynak tahsisi zorunluluğundan kurtaracaktır. Ayrıca çoğu bulut sunucu şirketi yeni kullanıcılarına yaklaşık 3 aya kadar süren ücretsiz kullanım sağlamaktadır. Serinin sonraki bölümlerinde bu sunuculara nasıl ücretsiz erişebileceğinizle ilgili ayrı bir yazı dizisi hazırlayacağım. Ben bu aşamada sunucu üzerine işletim sistemi kurmakla vakit kaybetmemek için Ubuntu 18.04 versiyonuna sahip bir bulut sunucusu edindim.
Kurulum
- Docker
- Portainer
- MQTT
- Node-Red
İşe ilk olarak sunucuya Docker kurmakla başlayalım. Aşağıdaki komut satırlarını sırasıyla çalıştırın.
1.Docker
sudo apt-get install curl apt-transport-https ca-certificates software-properties-commoncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository “deb [arch=amd64]https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable”sudo apt updateapt-cache policy docker-cesudo apt install docker-cesudo systemctl status docker
Eğer adımları sorunsuz bir şekilde tamamladıysanız Docker servisinin çalıştığını göreceksiniz.
2.Portainer
Şimdi de sırada Portainer’in kurulumu var. Portainer, Docker üzerine kurulan imajları size sunduğu kullanıcı arayüzü (management UI) ile yönetmeyi sağlayan bir eklentidir.
sudo docker volume create portainer_datadocker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.9.3
Portainer’in Docker üzerinde hangi portta çalıştığını görmek için docker ps komutunu çalıştırabilirsiniz. Aşağıda da görülebileceği üzere 9000 portunda çalışmaktadır.
3.MQTT
sudo docker run -ti -p 1883:1883 -p 9001:9001 toke/mosquitto
4.Node-Red
sudo docker run -it -p 1880:1880 -v myNodeREDdata:/data --name mynodered nodered/node-red
Docker sayesinde MQTT ve Node-Red üzerinde herhangi bir işlem yapmadan imajların ne kadar çabuk ayağa kaldırıldığını fark etmişsinizdir .
Kurulum süreçlerini tamamladığımıza göre artık son adıma geçebiliriz. Bunun için önce sunucuIP:9000 portuna tarayıcıdan gitmeniz gerekmektedir. Açılan ekranın sol tarafında yazan Containers seçeneğine gidelim. Burada Docker ile yüklediğimiz imajların çalışmadığı görülmektedir. Bu imajların arka planda daimi çalışması için ufak bir ayar yapacağız.
İlgili imajın üzerine tıklayarak açılan sekmede Duplicate/Edit kısmına gidilir. Sayfanın en aşağısında yazan Restart policy seçilerek restart policy Always yapılır ve Deploy the container’e basılarak ayarlar kaydedilir. 1–2 dk içinde servislerin çalışır duruma geçtiğini göreceksiniz.
Serinin sonraki bölümünde sunucuya yüklediğimiz MQTT broker’ın Node-Red ile kullanımını daha iyi anlamak amacıyla örnek bir proje üzerinden ele alacağız o zamana kadar tekrardan esenlikle kalın…