Kurumsal bir MQTT broker'ın yalnızca geliştiricileri değil, daha fazlasını tatmin etmesi gerekir: güvenlik mimarları, uyumluluk sorumluları, operasyon ekipleri ve satın alma birimi de söz sahibidir. Bu rehber onların tipik beklentilerini somut bir gereksinim kontrol listesine dönüştürüyor, hangi kurulum modellerinin hangi endişelere cevap verdiğini açıklıyor ve ConnectMQ'nun Dedicated, BYOC ve Self Managed Enterprise seçeneklerinin bunlarla nasıl eşleştiğini gösteriyor; böylece dağınık bir değerlendirme yerine odaklı bir değerlendirme yürütebilirsiniz.
Kurumsal Gereksinimler Neden Farklıdır
Bir girişim "çalışıyor mu ve ucuz mu?" diye sorar. Bir kurum ise "verilerimiz nereye gidiyor, kim dokunabilir, bozulduğunda ne olur ve tüm bunları bir denetçiye nasıl kanıtlarız?" diye sorar. Protokol, her broker'ın konuştuğu aynı MQTT 3.1.1 veya 5.0'dır; ancak karara çevresindeki sorular hâkim olur.
Kurumsal IoT ayrıca heterojen olma eğilimindedir: fabrikalardaki PLC ağ geçitleri, bina sistemleri, saha ekipmanları, mobil uygulamalar ve bulut analitiği; çoğu zaman farklı ekiplere aittir. Broker paylaşılan bir altyapıya dönüşür ve bu da izolasyon, yönetişim ve operasyonel olgunluk çıtasını yükseltir. Tüm bunların ardındaki protokol temelleri için bir MQTT broker'ın ne yaptığına bakın.
Gereksinim Alanları
1. İzolasyon ve Kiracılık
Başka bir müşterinin iş yükü sizinkini etkileyebilir mi? Paylaşımlı çok kiracılı katmanlar kimlik bilgileri, isim alanları ve kotalarla mantıksal izolasyon sağlar; bu birçok kullanım için yeterlidir. Sıkı politikalara sahip kurumlar genellikle fiziksel veya hesap düzeyinde izolasyon ister: dedicated bir küme ya da kendi bulut hesaplarında çalışan bir broker.
2. Kurulum Kontrolü ve Veri Konumu
Broker nerede çalışıyor ve altyapının sahibi kim? Seçenekler sağlayıcı tarafından barındırılandan, kendi bulutunu getir (BYOC) modeline ve tamamen kendi işlettiğiniz modele kadar uzanır. Veri yerleşimi kuralları, ağ mimarisi (fabrikalara veya VPC'lere özel bağlantı) ve kurum içi bulut politikaları genellikle bunu belirler.
3. Kimlik, Kimlik Doğrulama ve Erişim
Tipik sorular: kimlik bilgileri istemci başına benzersiz mi, çalınan bir kimlik bilgisi tek başına iptal edilebilir mi, client ID'ler kimliklere bağlı mı ve kaba kuvvet saldırıları engelleniyor mu? Kurumlar ayrıca yönetim konsolunun insan kullanıcıları için kurumsal kimlik sistemleriyle entegrasyonu da sorar. Değerlendirmenizde bugün mevcut olan ile yol haritasında olan konusunda net olun; tek oturum açma (SSO) ve ince taneli topic yetkilendirmesini varsaymak yerine doğrulanacak açık kalemler olarak ele alın.
4. Taşıma Güvenliği
Her harici bağlantıda TLS, modern şifre takımları, herkesçe güvenilen sertifikalar veya yönetilen özel bir CA ve tarayıcı istemcileri için güvenli WebSocket. MQTT güvenlik en iyi uygulamaları rehberimiz cihaz tarafında da nelerin şart koşulması gerektiğini ele alıyor.
5. Operasyonlar ve Gözlemlenebilirlik
Nöbette kim var, broker nasıl izleniyor, yükseltmeler nasıl yayına alınıyor ve bağlantılar, trafik ve hatalar üzerinde ne kadar görünürlüğe sahipsiniz? Burada bir yönetim portalı, bağlantı durumu topic'leri ve uyarılar önemlidir.
6. Ölçeklenebilirlik ve Dayanıklılık
Beklenen bağlantı sayıları, mesaj hızları, yeniden bağlanma fırtınalarındaki ani yük davranışı ve bir düğüm yeniden başladığında toparlanma senaryosu. Manşet rakamları kabul etmek yerine mimari hakkında somut sorular sorun.
7. Destek ve Ticari Koşullar
Yanıt süreleri, eskalasyon yolları, adı belirlenmiş irtibat kişileri ve sözleşmesel taahhütler. Bunları satın alma sürecinde yazılı olarak isteyin; pazarlama sayfalarına güvenmeyin.
8. Endüstriyel ve Veri Modeli Uyumu
Üretim için ISA-95 topic hiyerarşileri, Unified Namespace deseni ve Sparkplug B payload'ları desteği ciddi miktarda entegrasyon işinden tasarruf sağlar.
Gereksinimlere Göre Kurulum Modelleri
| Gereksinim | Serverless (paylaşımlı) | Dedicated | BYOC | Self Managed Enterprise |
|---|---|---|---|---|
| Altyapı izolasyonu | Mantıksal | İzole küme | İzole, sizin hesabınızda | Tamamen size ait |
| Altyapının sahibi | Sağlayıcı | Sağlayıcı | Siz | Siz |
| Broker'ı kim işletir | Sağlayıcı | Sağlayıcı | Sağlayıcı | Siz |
| Sıkı veri konumu politikasına uyum | Bazen | Çoğu zaman | Evet | Evet |
| Size düşen operasyonel yük | Yok | Yok | Düşük (hesap, ağ) | Yüksek |
| Tipik kullanım | Pilotlar, küçük filolar | Üretim filoları | Düzenlemeye veya politikaya tabi kuruluşlar | İnternetten yalıtılmış veya tamamen şirket içi |
ConnectMQ dördünü de sunar. Dedicated, sizin için işletilen izole bir küme verir. BYOC, broker'ı sizin bulut hesabınızın içine dağıtırken yönetimini yine sağlayıcı üstlenir; bu da ekibinizi broker operatörüne dönüştürmeden "verilerimiz kendi hesabımızda kalır" gereksinimini karşılar. Self Managed Enterprise, her şeyi kendisi çalıştırmak zorunda olan kuruluşlar içindir. Dedicated MQTT broker rehberi izole kümeler için kapasite planlamasını ele alıyor.
Doğrulayabileceğiniz Yetenekler
Kurumsal değerlendirmelerde netlik, coşkudan üstündür. Doğrulayabileceğiniz yetenekler şunlardır:
- Let's Encrypt sertifikalarıyla TCP 1883, TLS 8883, WebSocket 8083 ve Secure WebSocket 8084 (yol
/mqtt) üzerinde MQTT 3.1.1 ve 5.0. - Plan başına kotalar, flood koruması, tekrarlanan başarısız girişlerden sonra IP engelleme ve verilen kimlik bilgilerine bağlı client ID'lerle çok kiracılı izolasyon.
- MQTT 5 özellikleri: shared subscription, retained message, session expiry, topic alias, message expiry, response topic ve
0x97(quota exceeded) gibi reason code'lar. $SYS/broker/connection/{clientId}/stateüzerinden bağlantı durumu.- Portal araçları: Türkçe ve İngilizce olarak tarayıcı içi istemci, canlı topic gezgini, dashboard, ISA-95 seviyelerine göre cihazlar görünümü, eşik uyarı kuralları ve uyarı günlüğü.
- Endüstriyel özellikler: ISA-95 ve Unified Namespace topic algılama, Sparkplug B çözümleme (Protobuf ve JSON) ve Sparkplug B'yi ISA-95 topic'lerine yeniden yayımlama; örneğin
spBv1.0/factory1/DDATA/line1/cnc1→connectmq/factory1/production/line1/cnc1/telemetry. Bkz. Sparkplug B ve Unified Namespace.
Planlamanız gerekenler de aynı derecede önemlidir. ConnectMQ bir entegrasyon platformu değil, bir broker'dır: yerleşik bir kural motoru, webhook sistemi ya da veritabanı ve Kafka köprüsü yoktur. Kurumlar, abone olup historian'larına, veri göllerine veya akış platformlarına yazan kendi MQTT istemcilerini (örneğin Node-RED, Telegraf veya küçük bir servis) çalıştırarak entegrasyon yapar. Entegrasyon katmanı kendi kontrollerinde kaldığı için birçok mimar bunu tercih eder. Aynı şekilde, kümeleme, replikasyon, topic başına yetkilendirme ve sözleşmesel erişilebilirliği varsaymak yerine kendi kurulumunuz için doğrudan sorun.
Entegrasyon Deseni: Sahibi Olduğunuz Bir Abone
Tipik bir kurumsal desen, dahili bir sisteme yazan shared subscription tüketici grubudur. Bu servisin birkaç örneğini çalıştırmak yükü otomatik olarak böler (shared subscription, bunu destekleyen bir plan gerektirir).
import json
import ssl
import paho.mqtt.client as mqtt
GROUP_TOPIC = "$share/historian/connectmq/+/production/+/+/telemetry"
def write_to_historian(topic: str, payload: dict) -> None:
# Kendi veritabanı veya akış istemcinizle değiştirin.
print(topic, payload)
def on_connect(client, userdata, flags, reason_code, properties):
if reason_code.is_failure:
print("Connect failed:", reason_code)
return
client.subscribe(GROUP_TOPIC, qos=1)
def on_message(client, userdata, msg):
try:
write_to_historian(msg.topic, json.loads(msg.payload))
except (ValueError, UnicodeDecodeError):
print("Skipping non-JSON payload on", msg.topic)
client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2, client_id="YOUR_CLIENT_ID",
protocol=mqtt.MQTTv5)
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.reconnect_delay_set(min_delay=1, max_delay=60)
client.connect("broker.connectmq.com", 8883, keepalive=60)
client.loop_forever()
Üretimde hostname'i Dedicated veya BYOC uç noktanızla değiştirin.
Kurumsal Değerlendirme Kontrol Listesi
Bunu teklif şartnamenizin (RFP) veya kavram kanıtı planınızın iskeleti olarak kullanın:
- Politikalarınızın gerektirdiği kurulum modelini belgeleyin: paylaşımlı, dedicated, BYOC veya self-managed.
- Özel bağlantı ihtiyaçları dahil veri konumu ve ağ kısıtlarını listeleyin.
- Tarayıcı uygulamaları için WebSocket dahil protokol sürümlerini ve portları teyit edin.
- İstemci başına kimlik bilgilerini, iptali ve kaba kuvvet korumasını doğrulayın.
- Topic düzeyinde yetkilendirme ihtiyaçlarını belirtin ve nasıl karşılanacağını teyit edin.
- Beklenen tepe bağlantıları, mesaj hızlarını ve payload boyutlarını tanımlayın.
- Kavram kanıtında bir yeniden bağlanma fırtınasını test edin.
- İzleme görünürlüğünü teyit edin: bağlantı durumu, trafik, uyarılar.
- Entegrasyon hedeflerini ve abone katmanını kimin kurup işleteceğini belirleyin.
- Destek koşullarını, eskalasyon irtibatlarını ve taahhütleri yazılı olarak kararlaştırın.
- Endüstriyel ihtiyaçları doğrulayın: ISA-95, Unified Namespace, Sparkplug B.
- Kimlik bilgisi yenileme dahil pilottan üretime geçişi planlayın.
Bu kontrol listesinin ardındaki barındırma seçeneklerinin geniş bağlamı için bulut MQTT broker ana rehberini ve yönetilen MQTT broker modeli rehberimizi okuyun.
ConnectMQ'yu Kurumunuz İçin Değerlendirin
Bir değerlendirmeye başlamanın en hızlı yolu uygulamalı denemektir. app.connectmq.com adresinde ücretsiz bir Serverless broker oluşturun (kredi kartı gerekmez) ve bir ağ geçidi, bir abone ve portal araçlarını bağlayın. Ardından gereksinim kontrol listeniz elinizdeyken üretim için Dedicated, BYOC veya Self Managed Enterprise hakkında ConnectMQ ile görüşün.
Sık Sorulan Sorular
Bir MQTT broker'ı kurumsal kullanıma hazır kılan nedir?
Politikalarınızla uyumlu izolasyon, nerede çalıştığı üzerinde kontrol, güçlü kimlik doğrulama ve TLS, operasyonel görünürlük ve güvenebileceğiniz destek koşulları. Protokolün kendisi herhangi bir standart broker'la aynıdır.
Dedicated ile BYOC arasındaki fark nedir?
Dedicated, sağlayıcının altyapısında izole bir küme çalıştırır. BYOC ise broker'ı kendi bulut hesabınızda çalıştırır ve sağlayıcı onu yine işletir.
Yerleşik bir kural motoru veya veritabanı bağlayıcısı var mı?
Hayır. Entegrasyonlar; Node-RED, Telegraf veya abone olup sistemlerinize yazan özel servisler gibi kendi MQTT istemcilerinizle kurulur.
ConnectMQ endüstriyel ağ geçitlerinden gelen Sparkplug B'yi işleyebilir mi?
Evet. Sparkplug B'yi Protobuf veya JSON olarak çözer ve bir Unified Namespace için ISA-95 yapılı topic'lere yeniden yayımlayabilir.



