Publicera ett HDInsight-program i Azure Marketplace

Du kan installera ett Azure HDInsight-program i ett Linux-baserat HDInsight-kluster. I den här artikeln får du lära dig hur du publicerar ett HDInsight-program i Azure Marketplace. Allmän information om publicering i Azure Marketplace finns i Publicera ett erbjudande i Azure Marketplace.

HDInsight-program använder BYOL-modellen (Bring Your Own License). I ett BYOL-scenario ansvarar en programleverantör för licensiering av programmet till appanvändare. Appanvändare debiteras endast för de Azure-resurser som de skapar, till exempel HDInsight-klustret och klustrets virtuella datorer och noder. För närvarande sker inte fakturering för själva programmet i Azure.

Mer information finns i dessa programrelaterade HDInsight-artiklar:

Förutsättningar

Om du vill skicka in ditt anpassade program på Marketplace måste du först skapa och testa ditt anpassade program.

Du måste också registrera ditt utvecklarkonto. Mer information finns i Publicera ett erbjudande i Azure Marketplace och Skapa ett Microsoft Developer-konto.

Definiera programmet

Två steg ingår i publiceringen av program på Marketplace. Definiera först en createUiDef.json-fil . Filen createUiDef.json anger vilka kluster som programmet är kompatibelt med. Publicera sedan mallen från Azure Portal. Här är ett exempel på en createUiDef.json-fil:

{
    "handler": "Microsoft.HDInsight",
    "version": "0.0.1-preview",
    "clusterFilters": {
        "types": ["Hadoop", "HBase", "Spark"],
        "versions": ["4.0"]
    }
}
Fält Beskrivning Möjliga värden
typer De klustertyper programmet är kompatibelt med. Hadoop, HBase, Spark (eller någon kombination av dessa)
versioner De typer av HDInsight-kluster programmet är kompatibelt med. 3.4

Programinstallationsskript

När ett program installeras i ett kluster (antingen i ett befintligt kluster eller på ett nytt) skapas en gränsnod. Programinstallationsskriptet körs på gränsnoden.

Viktigt

Namnet på programinstallationsskriptet måste vara unikt för ett specifikt kluster. Skriptnamnet måste ha följande format:

"name": "[concat('hue-install-v0','-' ,uniquestring('applicationName')]"

Skriptnamnet består av tre delar:

  • Ett skriptnamnprefix, som måste innehålla antingen programnamnet eller ett namn som är relevant för programmet.
  • Ett bindestreck för läsbarhet.
  • En unik strängfunktion med programnamnet som parameter.

I listan över beständiga skriptåtgärder visas föregående exempel som hue-install-v0-4wkahss55hlas. Se en JSON-exempelnyttolast.

Installationsskriptet måste ha följande egenskaper:

  • Skriptet är idempotent. Flera anrop till skriptet ger samma resultat.
  • Skriptet är korrekt versionshanterat. Använd en annan plats för skriptet när du uppgraderar eller testar ändringar. Detta säkerställer att kunder som installerar programmet inte påverkas av dina uppdateringar eller testning.
  • Skriptet har tillräcklig loggning vid varje punkt. Skriptloggar är vanligtvis det enda sättet att felsöka programinstallationsproblem.
  • Anrop till externa tjänster eller resurser har lämpliga återförsök så att installationen inte påverkas av tillfälliga nätverksproblem.
  • Om skriptet startar tjänster på noderna övervakas tjänsterna och konfigureras så att de startar automatiskt om en nod startas om.

Paketera programmet

Skapa en .zip fil som innehåller alla filer som krävs för att installera HDInsight-programmet. Du använder .zip-filen för att publicera programmet. Den .zip filen innehåller följande filer:

Anteckning

Du kan vara värd för programfilerna (inklusive alla webbappfiler) på valfri offentligt tillgänglig slutpunkt.

Publicera programmet

Så här publicerar du ett HDInsight-program:

  1. Logga in på Azure Publishing.

  2. I den vänstra menyn väljer du Lösningsmallar.

  3. Ange en rubrik och välj sedan Skapa en ny lösningsmall.

  4. Om du inte redan har registrerat din organisation väljer du Skapa Dev Center-konto och ansluter till Azure-programmet. Mer information finns i Skapa ett Microsoft Developer-konto.

  5. Välj Definiera några topologier för att komma igång. En lösningsmall är en "överordnad" till alla dess topologier. Du kan definiera flera topologier i ett erbjudande eller en lösningsmall. När ett erbjudande skickas till mellanlagring push-överförs det med alla dess topologier.

  6. Ange ett topologinamn och välj +sedan .

  7. Ange en ny version och välj +sedan .

  8. Ladda upp den .zip fil som du skapade när du paketerade programmet.

  9. Välj Begär certifiering. Microsofts certifieringsteam granskar filerna och certifierar topologin.

Nästa steg