urMQTT Enterprise
L'édition commerciale d'urMQTT. C'est le noyau et le broker ouverts, complétés par des pilotes pour les périphériques qui ne sont pas virtio, pour les types d'instances cloud et les machines physiques sur lesquels l'édition ouverte ne peut pas fonctionner, et par le support qui les accompagne.
État
Commerciale
En développement. Aucune version d'Enterprise n'a encore été publiée. Nous recherchons des clients partenaires de conception pour la première cible, Google Cloud. Les conditions du support et d'un contrat de niveau de service ne sont pas encore définies. Prix sur demande.
Ce qu'elle ajoute à l'édition ouverte
Google Cloud : gVNIC et NVMe
Pilotes pour la carte réseau (gVNIC) et les disques NVMe des types d'instances récents de Google Cloud, comme C3, C4 et les types Arm. La première cible.
AWS Nitro : ENA et NVMe
Pilotes pour l'Elastic Network Adapter et les disques NVMe (EBS et stockage d'instance) des instances Nitro, sur x86_64 et sur Graviton (Arm). Après Google Cloud.
Azure et VMware
Sur Azure, les périphériques VMBus de Hyper-V (NetVSC pour le réseau, StorVSC pour le stockage) et MANA ; sur VMware, VMXNET3 et PVSCSI. Développés lorsqu'un client en a besoin.
Bare metal
Pilotes pour les cartes réseau et les contrôleurs de disque physiques (par exemple Intel e1000e et igb, NVMe, AHCI), démarrage USB, un rapport matériel et la liste des machines sur lesquelles il a fonctionné. Développés lorsqu'un client en a besoin.
Support et contrat de niveau de service
Réponses, correctifs et mises à niveau dans des délais de réponse convenus. Les conditions ne sont pas encore définies.
Images de production signées
Une image configurée pour vous (votre autorité de certification, votre réseau) et signée, dont l'empreinte de configuration est consignée, afin que vous puissiez vérifier sur la console que c'est bien l'image que vous avez commandée.
Adaptation de votre propre service
La prestation consistant à adapter un service réseau existant à un unikernel, proposée sous Services : une étude de faisabilité, le portage et un pilote sur votre infrastructure. Unikernel : votre service sans système d'exploitation →
Ce qui fonctionne où
| Plateforme et périphériques | urMQTT (open source) | urMQTT Enterprise |
|---|---|---|
| Périphériques virtio : réseau, disque, SCSI, nombres aléatoires, console, balloon, console GPU, entrée, vsock | Oui : tous les pilotes virtio | Inclus |
| Périphériques qui ne sont pas virtio : gVNIC, ENA, NVMe, VMBus, MANA, VMXNET3, PVSCSI, cartes réseau physiques, AHCI | Non | Prévu, par plateforme ci-dessous |
| QEMU et KVM avec périphériques virtio | Oui : testé (QEMU dans la suite de tests) | Inclus |
| VPS KVM chez netcup (aarch64) et Contabo (x86_64) | Oui : une version candidate a fonctionné sur les deux | Inclus |
| Autres VPS KVM avec périphériques virtio, par exemple Hetzner | Attendu : non testé | Inclus |
| Proxmox VE, Cloud Hypervisor, bhyve (virtio sur PCI) | Attendu : non testé | Inclus |
| Firecracker (virtio sur MMIO, démarre sans UEFI ni BIOS) | Pas encore : ni l'un ni l'autre n'est pris en charge ; ce serait un travail pour l'édition ouverte | Comme l'édition ouverte |
| Google Cloud e2, n2 et autres types avec virtio-net et un disque virtio-scsi | Attendu : pas encore testé ; tant que l'édition ouverte ne respecte pas le MTU du réseau, elle exige un réseau avec un MTU de 1500 (celui par défaut de Google Cloud est 1460) | Inclus |
| Google Cloud C3, C4 et types Arm (gVNIC, disques NVMe) | Non | Prévu : la première cible |
| AWS Nitro, x86_64 et Graviton (ENA, disques NVMe) | Non | Prévu, après Google Cloud |
| Azure (Hyper-V VMBus avec NetVSC et StorVSC, MANA) | Non | Prévu, lorsqu'un client en a besoin |
| VMware (VMXNET3, PVSCSI) | Non | Prévu, lorsqu'un client en a besoin |
| Bare metal (cartes réseau physiques, NVMe, AHCI, démarrage USB) | Non | Prévu, lorsqu'un client en a besoin |
La frontière entre les éditions est l'interface des périphériques : l'édition ouverte pilote tout périphérique virtio (identifiant de fabricant PCI 1AF4), sur tout hyperviseur qui en propose ; Enterprise ajoute les périphériques qui ne le sont pas. Attendu signifie que la plateforme propose les périphériques que pilote l'édition ouverte, mais qu'aucune image urMQTT n'y a encore fonctionné. Aucune version d'Enterprise n'a encore été publiée : sa colonne indique ce qu'elle contiendra.
Ce qui reste identique
Enterprise est le noyau ouvert avec davantage de pilotes, et non un autre broker. Le protocole MQTT, la pile réseau, TLS 1.3 avec authentification mutuelle, chaque fonction de sécurité, le stockage, le format de configuration et les outils sont ceux de l'édition ouverte, et ils restent ouverts (Apache-2.0 OR MIT). L'édition ouverte n'a aucune limite de connexions, de cœurs, de mémoire ou de débit, et aucun correctif de sécurité ne lui est refusé.
Processus de sécurité et audit
Une vulnérabilité est traitée de la même manière dans les deux éditions, selon un processus publié ; un correctif d'un code partagé est publié dans l'édition ouverte au plus tard en même temps que dans Enterprise. Pour chaque version d'Enterprise, un résumé de son état d'audit est publié : les pilotes qu'elle ajoute, les entrées externes qu'ils analysent, leurs cibles de fuzzing et leurs tests, et les constats ouverts, sous la forme du dossier d'audit de l'édition ouverte.
L'édition ouverte
urMQTT, tout ce qui fonctionne sur virtio, est open source sous Apache-2.0 OR MIT. Ce qui est ouvert le reste, la frontière entre les éditions ne recule jamais vers le côté commercial, et l'édition ouverte n'est pas affaiblie pour vendre celle-ci.
Partenaires de conception et questions
Si vous souhaitez exécuter urMQTT sur les types d'instances Google Cloud avec gVNIC et NVMe, sur AWS, Azure, VMware ou sur votre propre matériel, dites-nous ce que vous utilisez et ce dont vous avez besoin. Prix sur demande.