Yönetilen MQTT Bulutu

BYOC MQTT Broker: Kendi Bulutunuzu Getirin Modeli Açıklandı

BYOC MQTT broker sizin bulut hesabınızda çalışır ama bir sağlayıcı tarafından işletilir. Modelin nasıl işlediğini, sorumluluk paylaşımını ve hesabınızı buna nasıl hazırlayacağınızı öğrenin.

Bir müşterinin bulut hesabı içinde çalışan ve sağlayıcı tarafından dışarıdan yönetilen bir broker'ı gösteren BYOC MQTT broker illüstrasyonu
Bunu kendi MQTT broker’ınızda çalıştırınFree planla özel, yönetilen bir MQTT broker alın ve hazır kod örnekleriyle başlayın.
Ücretsiz deneyin Kod örnekleri Kart gerekmez

Bir BYOC MQTT broker, operasyonel işleri uzman bir sağlayıcı üstlenirken sizin kendi bulut hesabınızda çalışır. Bu yazı, kendi bulutunuzu getirin (bring your own cloud) modelinin nasıl işlediğini, sorumlulukların nerede durduğunu, paylaşımlı veya dedicated barındırmaya göre ne zaman doğru seçim olduğunu ve geçişten önce hesabınızı nasıl hazırlayacağınızı açıklıyor.

BYOC MQTT Broker Nedir?

"Kendi bulutunuzu getirin", yazılımın sizin sahip olduğunuz ve ödediğiniz altyapıda, genellikle kuruluşunuzun kontrolündeki bir bulut hesabında veya aboneliğinde çalıştığı, ancak sağlayıcının yönettiği bir dağıtım modelini tanımlar. Broker'ın sanal makineleri veya konteynerleri, ağı, diskleri ve yük dengeleyicileri sizin hesabınızda yaşar. Sağlayıcının mühendisleri veya otomasyonu, sizin verdiğiniz erişim üzerinden broker'ı dağıtır, yapılandırır, günceller ve izler.

Bunu daha tanıdık iki barındırma seçeneğiyle karşılaştırın:

  • Paylaşımlı (serverless) barındırma. Pek çok müşteri, sağlayıcının hesabında çalışan bir kümeyi paylaşır. Uç noktaları ve kimlik bilgilerini dakikalar içinde alırsınız ve boşta duran kapasite için hiçbir şey ödemezsiniz, ancak altta yatan altyapıyı siz seçmezsiniz.
  • Dedicated barındırma. Size ait izole bir küme alırsınız, ancak bu küme yine sağlayıcının hesabındadır. Performans kimseyle paylaşılmaz, ama altyapının sahibi hâlâ sağlayıcıdır.
  • BYOC. Kendi hesabınızda, size ait izole bir broker. Mesaj trafiği sizin kontrol ettiğiniz altyapıdan, sizin bulut güvenlik politikalarınız ve faturalandırmanız altında akar.

Broker'ların bir IoT sistemine nasıl oturduğu konusunda yeniyseniz, bir MQTT broker'ın ne yaptığı yazısı temelleri ele alır.

Ekipler Neden Kendi Bulutlarını Getirmeyi Seçer?

Veri Kontrolü ve Uyumluluk

En yaygın neden veri kontrolüdür. Bazı kuruluşların, cihaz telemetrisi dahil canlı ortam verilerinin kendi loglama, şifreleme anahtarları, ağ kontrolleri ve denetimlerinin geçerli olduğu, sahip oldukları hesaplarda kalması gerektiğine dair bir politikası vardır. BYOC dağıtımı, ekibin broker operatörüne dönüşmesine gerek kalmadan MQTT katmanının bu politikayı karşılamasını sağlar. MQTT veri yerelleştirme rehberimiz konum ve mevzuat konularını daha derinlemesine ele alır.

Ağ Yakınlığı

Akış işlemcileri, veritabanları ve analitik hizmetler gibi tüketicileriniz zaten belirli bir bulut hesabı ve bölgede çalışıyorsa, broker'ı onların yanına yerleştirmek trafiği özel ağ üzerinde tutar. Sanal ağınızdaki aboneler genel internetten geçmeden bağlanabilir, cihazlar ise yine herkese açık bir uç noktaya ulaşır.

Mevcut Bulut Taahhütlerini Kullanmak

Pek çok şirket bir bulut sağlayıcıyla taahhüt anlaşmaları yapmıştır. Broker altyapısını kendi hesabınızda çalıştırmak, işlem ve ağ harcamasının bu taahhütlere sayılması ve mevcut maliyet raporlarınızda görünmesi anlamına gelir.

Güvenlik İncelemesi Daha Basittir

Güvenlik ekipleri, zaten izledikleri bir hesapta, zaten uyguladıkları politikalar altında duran altyapıyı onaylamayı, yeni bir üçüncü taraf ortamını sıfırdan değerlendirmekten çoğu zaman daha kolay bulur.

BYOC Dağıtımında Kim Neyin Sahibidir?

Kesin paylaşım sağlayıcıyla yaptığınız sözleşmeyle belirlenir, ancak tipik desen şöyledir:

Alan Siz (hesap sahibi) Sağlayıcı (operatör)
Bulut hesabı, faturalandırma, kuruluş politikaları Evet Hayır
Ağ tasarımı, IP aralıkları, peering, güvenlik duvarı politikası Onaylar ve sahiplenir Broker'a özgü kısımları önerir ve uygular
Broker kurulumu ve yapılandırması İnceler Evet
Broker güncellemeleri ve güvenlik yamaları Bakım pencerelerini onaylar Evet
Broker uç noktaları için TLS sertifikaları Alan adı kararları Düzenleme ve yenileme
Broker sağlık izleme ve olay müdahalesi Eskalasyon irtibatı Evet
Cihaz firmware'i ve client uygulamaları Evet Hayır
Veri tüketicileri ve aşağı akış entegrasyonları Evet Hayır

Temel fikir şudur: altyapının sahipliğini ve görünürlüğünü siz korursunuz, operasyonel yükü sağlayıcı taşır. Erişim kapsamı, bakım pencereleri, eskalasyon yolları ve erişimin nasıl iptal edileceği konusunda yazılı olarak anlaşmalısınız.

BYOC ile Paylaşımlı, Dedicated ve Kendi Sunucunuzda Barındırma Karşılaştırması

Kriter Paylaşımlı serverless Dedicated BYOC Kendi sunucunuzda
Altyapının çalıştığı yer Sağlayıcı hesabı Sağlayıcı hesabı Sizin hesabınız Sizin hesabınız veya veri merkeziniz
Broker'ı kim işletir Sağlayıcı Sağlayıcı Sağlayıcı Sizin ekibiniz
Diğer müşterilerden izolasyon Mantıksal Fiziksel küme Fiziksel, sizin hesabınızda Tam
İlk bağlantıya kadar geçen süre Dakikalar Kısa Daha uzun (hesap kurulumu) Ekibinize bağlı
Altyapı faturası Plana dahil Plana dahil Bulut faturanız artı hizmet Bulut veya donanım faturanız
Sizin operasyonel eforunuz Çok düşük Çok düşük Düşük Yüksek

BYOC, dedicated barındırma ile kendi sunucunuzda barındırma arasında yer alır. Buna ihtiyacınız olduğundan emin değilseniz, bir dedicated MQTT broker çoğu zaman daha az kurulumla yeterli izolasyon sağlar. Tam kontrol istiyor ve onu çalıştıracak ekibiniz varsa, eforu kendi sunucunuzda vs yönetilen MQTT broker yazısında karşılaştırın.

ConnectMQ BYOC Nasıl Çalışır?

ConnectMQ, BYOC'yi planlarından biri olarak sunar: broker sizin bulut hesabınızda çalışır ve sizin için yönetilir. Diğer planlardakiyle aynı şekilde davranır. Client'lar standart portlarda, yani TCP 1883, TLS 8883, WebSocket 8083 ve /mqtt yoluyla Secure WebSocket 8084 üzerinde MQTT 3.1.1 veya MQTT 5.0 ile bağlanır; bu nedenle Serverless veya Dedicated broker için yazılmış cihaz firmware'i ve uygulamalar kod değişikliği gerektirmez, yalnızca yeni bağlantı bilgileri gerekir.

Platform özellikleri kullanılabilir kalır: client ID'lerin bağlandığı otomatik oluşturulan kimlik bilgileri, çok kiracılı izolasyon ve plan başına kotalar, flood koruması, tekrarlanan başarısız oturum açma denemelerinden sonra IP engelleme, paylaşımlı abonelikler, oturum süresi dolumu ve mesaj süresi dolumu gibi MQTT 5 özellikleri ve endüstriyel projeler için ISA-95 topic'lerine yeniden yayınlamayla birlikte Sparkplug B çözümleme.

BYOC bulut ortamınıza bağlı olduğundan, geçişi planlamadan önce desteklenen bulut sağlayıcılarını, bölgeleri ve erişim modelini doğrudan ekiple teyit edin.

Bulut Hesabınızı Hazırlamak

Hangi sağlayıcıyı kullanırsanız kullanın, aynı hazırlık BYOC'ye geçişi kısaltır:

  1. Broker için ayrı bir hesap veya abonelik oluşturun; böylece izinleri, faturalandırması ve denetim logları diğer iş yüklerinden ayrılır.
  2. Bölgeyi seçin; cihazların nereden bağlandığına, tüketicilerin nerede çalıştığına ve varsa veri yerelleştirme gereksinimlerine göre.
  3. Ağ aralıkları ayırın; peering veya VPN bağlantısı planlıyorsanız mevcut VPC'lerinizle veya şirket içi ağlarınızla çakışmayacak şekilde.
  4. Hizmet kotalarını kontrol edin; o bölgedeki işlem örnekleri, yük dengeleyiciler ve genel IP adresleri için.
  5. Erişim modelini tanımlayın: sağlayıcının üstlenebileceği, loglaması açık, kapsamı sınırlı bir rol ve onu iptal etmenin belgelenmiş bir yolu.
  6. DNS'e karar verin; broker uç noktaları için ve kayıtları kimin yöneteceği konusunda.
  7. Bakım pencereleri üzerinde anlaşın; ve güncellemelerden önce nasıl bilgilendirileceğiniz konusunda.
  8. Maliyet etiketleri kurun; böylece broker altyapısı raporlarınızda görünür olur.

Geçişten Önce Client'larınızı Doğrulayın

BYOC ortamı hazırlanırken client davranışını önce herkese açık MQTT test broker'ına, ardından ücretsiz özel bir broker'a karşı test edebilirsiniz. Bu Python örneği paho-mqtt 2.x kullanır ve TLS üzerinden bağlanır. Daha sonra host'u ve kimlik bilgilerini BYOC uç noktanızla değiştirin; başka hiçbir şey değişmez.

import ssl
import paho.mqtt.client as mqtt

HOST = "broker.connectmq.com"   # BYOC uç noktanızla değiştirin
PORT = 8883
CLIENT_ID = "YOUR_CLIENT_ID"

def on_connect(client, userdata, flags, reason_code, properties):
    print("Connected:", reason_code)
    client.subscribe("connectmq/demo/byoc-7c21/#", qos=1)
    client.publish("connectmq/demo/byoc-7c21/status", "online", qos=1, retain=True)

def on_message(client, userdata, msg):
    print(msg.topic, msg.payload.decode())

client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id=CLIENT_ID,
                     protocol=mqtt.MQTTv5)
# Özel bir broker için yorum satırını kaldırın:
# client.username_pw_set("YOUR_USERNAME", "YOUR_PASSWORD")
client.tls_set(cert_reqs=ssl.CERT_REQUIRED)
client.on_connect = on_connect
client.on_message = on_message
client.connect(HOST, PORT, keepalive=60)
client.loop_forever()

Aynı betiği her ortama karşı çalıştırın ve topic yapısını aynı tutun. BYOC broker canlıya geçtiğinde geçiş yalnızca bir yapılandırma değişikliğidir.

Yaygın Tuzaklar

  • Operatöre gereğinden geniş erişim. Yalnızca broker'ın ihtiyaç duyduğunu verin ve her işlemi loglayın.
  • Çıkış (egress) maliyetlerini unutmak. Cihazlar veya tüketiciler başka bölgelerde ya da bulutlarda bulunuyorsa, veri aktarım ücretleri faturanıza yansır.
  • Güncellemeleri engellemek. Operatörün yama yapmasını önleyen politikalar, bakımı yapılmayan, kendi sunucunuzda barındırılan bir broker ile aynı riski yaratır.
  • Hazırlık (staging) ortamı olmaması. Firmware ve entegrasyon testleri için, örneğin ücretsiz Serverless planında, küçük bir canlı ortam dışı broker tutun.

ConnectMQ ile Başlayın

Platformu bugün, kredi kartı olmadan ücretsiz Serverless planında app.connectmq.com adresinden keşfedebilirsiniz. Cihazlarınızı orada geliştirip test edin; veri kontrolü gereksinimleriniz bunu gerektirdiğinde BYOC'ye geçiş için ekiple görüşün. Barındırma seçeneklerine daha geniş bir bakış için bulut MQTT broker rehberini okuyun veya planları tam yönetilen MQTT hizmeti genel bakışında karşılaştırın.

Sık Sorulan Sorular

BYOC MQTT broker, kendi sunucunuzda barındırmakla aynı şey mi?

Hayır. Altyapı sizin hesabınızdadır, ancak broker'ı sağlayıcı kurar, günceller ve izler. Kendi sunucunuzda barındırmada bunların hepsini kendi ekibiniz yapar.

Cihazlarımın BYOC için farklı bir firmware'e ihtiyacı var mı?

Broker standart MQTT konuşuyorsa hayır. ConnectMQ'da BYOC diğer planlarla aynı protokolleri ve portları kullanır; yalnızca host adını ve kimlik bilgilerini değiştirirsiniz.

BYOC'de bulut altyapısının bedelini kim öder?

Altyapı kendi bulut faturanızda görünür, yönetim hizmeti ise sağlayıcı tarafından ayrıca faturalandırılır. Kesin düzenlemeyi sağlayıcınızla teyit edin.

BYOC ne zaman gereğinden fazladır?

Verilerin kendi hesabınızda kalmasını gerektiren bir politikanız yoksa, paylaşımlı veya dedicated yönetilen bir broker ile başlamak daha hızlı ve çalıştırmak daha basittir.

İlgili yazılar

Google Cloud IoT Core Alternatifi: Kapanış Sonrası Seçenekler ve Geçiş

Google, Cloud IoT Core'u Ağustos 2023'te kullanımdan kaldırdı. Bu rehber gerçekçi alternatifleri karşılaştırıyor, IoT Core kavramlarını standart MQTT'ye eşliyor ve verileriniz Google Cloud'a akmaya devam ederken cihazlarınızı yönetilen bir broker'a nasıl taşıyacağınızı gösteriyor.

7 dk okuma

Saniyede MQTT Mesaj Sayısı: Verim Nasıl Tahmin Edilir ve Ölçülür

MQTT verim planlaması birkaç formüle ve tek bir dürüst ölçüme dayanır. Saniyedeki gelen ve giden mesaj sayısını nasıl tahmin edeceğinizi, tepe değerleri nasıl hesaba katacağınızı ve sonucu bir broker planına nasıl eşleyeceğinizi öğrenin.

6 dk okuma

Tüm yazılar →

Özel MQTT broker’ınız birkaç tık uzağınızda

Hesabınızı oluşturun, broker kimlik bilgilerinizi alın ve ilk cihazınızı bağlayın — kurulacak, yamalanacak ya da ölçeklendirilecek sunucu yok.