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:
- 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.
- Bölgeyi seçin; cihazların nereden bağlandığına, tüketicilerin nerede çalıştığına ve varsa veri yerelleştirme gereksinimlerine göre.
- 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.
- Hizmet kotalarını kontrol edin; o bölgedeki işlem örnekleri, yük dengeleyiciler ve genel IP adresleri için.
- 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.
- DNS'e karar verin; broker uç noktaları için ve kayıtları kimin yöneteceği konusunda.
- Bakım pencereleri üzerinde anlaşın; ve güncellemelerden önce nasıl bilgilendirileceğiniz konusunda.
- 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.



