Preparación del entorno de desarrollo en Linux

Para implementar y ejecutar aplicaciones de Azure Service Fabric en la máquina de desarrollo de Linux, instale el motor de tiempo de ejecución y el SDK común. También puede instalar SDK opcionales para el desarrollo con Java y .NET Core.

En los pasos descritos en este artículo se supone que va a instalar de forma nativa en Linux o que va a usar la imagen de contenedor de Service Fabric OneBox, es decir, mcr.microsoft.com/service-fabric/onebox:u18.

Puede administrar las entidades de Service Fabric hospedadas en la nube o en el entorno local mediante la interfaz de la línea de comandos (CLI) de Azure Service Fabric. Para más información acerca de cómo instalar la CLI, consulte Configuración de la CLI de Service Fabric.

Requisitos previos

  • Asegúrese de que usa una versión de Linux compatible.

  • Instale el paquete apt-transport-https:

    sudo apt-get install apt-transport-https
    

Métodos de instalación

Actualización de los orígenes de APT

Para instalar el SDK y el paquete del sistema en tiempo de ejecución asociado mediante la herramienta de línea de comandos apt-get, primero debe actualizar los orígenes de Advanced Packaging Tool (APT).

Instalación mediante script

Para mayor comodidad, se proporciona un script para facilitar la instalación del sistema en tiempo de ejecución y el SDK común de Service Fabric junto con la CLI de sfctl. Con la ejecución del script se da por supuesto que acepta las licencias para todo el software que se está instalando. Como alternativa, puede seguir los pasos de instalación manual de la sección siguiente, que presentará las licencias asociadas, así como los componentes que se van a instalar.

Una vez que el script se ejecuta correctamente, puede ir directamente a Instalación de un clúster local.

sudo curl -s https://raw.githubusercontent.com/Azure/service-fabric-scripts-and-templates/master/scripts/SetupServiceFabric/SetupServiceFabric.sh | sudo bash

Instalación manual

Para la instalación manual del sistema en tiempo de ejecución y el SDK común de Service Fabric, siga los pasos descritos más abajo en esta guía.

  1. Abra un terminal.

  2. Agregue el repositorio dotnet a la lista de orígenes correspondiente a la distribución.

    wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb
    sudo dpkg -i packages-microsoft-prod.deb
    
  3. Agregue la clave de la protección de privacidad de GNU (GnuPG o GPG) de MS Open Tech al conjunto de claves de APT.

    sudo curl -fsSL https://packages.microsoft.com/keys/msopentech.asc | sudo apt-key add -
    
  4. Agregue la clave GPG oficial de Docker a su conjunto de claves APT.

    sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
  5. Configure el repositorio de Docker.

    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
    
  6. Agregue la clave de Azul JDK al conjunto de claves de APT y configure su repositorio.

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9
    sudo apt-add-repository "deb http://repos.azul.com/azure-only/zulu/apt stable main"
    
  7. Actualice las listas de paquetes según los repositorios recién agregados.

    sudo apt-get update
    

Instalación y configuración del SDK de Service Fabric para un clúster local

Una vez actualizados los orígenes, puede instalar el SDK. Instale el paquete del SDK de Service Fabric, confirme la instalación y acepte el contrato de licencia.

Ubuntu

sudo apt-get install servicefabricsdkcommon

Sugerencia

Los siguientes comandos aceptan automáticamente la licencia para los paquetes de Service Fabric:

echo "servicefabric servicefabric/accepted-eula-ga select true" | sudo debconf-set-selections
echo "servicefabricsdkcommon servicefabricsdkcommon/accepted-eula-ga select true" | sudo debconf-set-selections

Instalación de un clúster local

  1. Inicie un clúster de Service Fabric local para desarrollo.

Inicie un clúster de Service Fabric todo en uno basado en contenedores.

  1. Instale Moby para poder implementar contenedores de Docker.

    sudo apt-get install moby-engine moby-cli -y
    
  2. Actualice la configuración del demonio de Docker en el host con las opciones siguientes y reinicie dicho demonio. Detalles: Habilitación de la compatibilidad de IPv6

    {
        "ipv6": true,
        "fixed-cidr-v6": "fd00::/64"
    }
    
  3. Inicie el clúster.
    Ubuntu 20.04 LTS:

    docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u20
    

    Ubuntu 18.04 LTS:

    docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u18
    

    Sugerencia

    De forma predeterminada, se extraerá la imagen con la versión más reciente de Service Fabric. Para revisiones concretas, visite la página Docker Hub.

  1. Abra un explorador web y vaya a Service Fabric Explorer (http://localhost:19080/Explorer). Al iniciarse el clúster, debería ver el panel de Service Fabric Explorer. El clúster puede tardar varios minutos en configurarse totalmente. Si el explorador no abre la dirección URL o si Service Fabric Explorer no muestra que el sistema está listo, espere unos minutos y vuelva a intentarlo.

    Service Fabric Explorer en Linux

    Ahora, puede implementar paquetes de aplicación de Service Fabric precompilados o nuevos basados en contenedores de invitado o archivos ejecutables de invitado. Para compilar nuevos servicios con los SDK de .NET Core o de Java, siga los pasos de configuración opcionales que se proporcionan en las siguientes secciones.

Nota:

No se admiten clústeres independientes en Linux.

Sugerencia

Si tiene una disco SSD, es aconsejable que pase una ruta de acceso de las carpetas de esta unidad mediante --clusterdataroot con devclustersetup.sh, ya que mejorará el rendimiento.

Configuración de la CLI de Service Fabric

La CLI de Service Fabric tiene comandos para interactuar con las entidades de Service Fabric, incluidos los clústeres y las aplicaciones. Siga las instrucciones que aparecen en la CLI de Service Fabric para instalar la CLI.

Instalación de los generadores Yeoman para los contenedores y los ejecutables invitados

Service Fabric proporciona herramientas de scaffolding que le ayudarán a crear aplicaciones de Service Fabric desde un terminal mediante los generadores de plantillas Yeoman. Siga estos pasos para configurar los generadores de plantillas de Service Fabric Yeoman:

  1. Instale Node.js y NPM en la máquina.

    sudo add-apt-repository "deb https://deb.nodesource.com/node_8.x $(lsb_release -s -c) main"
    sudo apt-get update
    sudo apt-get install nodejs
    
  2. Instale el generador de plantillas Yeoman en la máquina desde NPM.

    sudo npm install -g yo
    
  3. Instalación del generador de contenedores Yeo de Service Fabric y el generador de ejecutables invitados desde NPM.

    sudo npm install -g generator-azuresfcontainer  # for Service Fabric container application
    sudo npm install -g generator-azuresfguest      # for Service Fabric guest executable application
    

Después de instalar los generadores, cree ejecutables invitados o servicios de contenedor mediante la ejecución de yo azuresfguest o yo azuresfcontainer respectivamente.

Configuración del desarrollo con .NET Core 3.1

Instale el SDK de .NET Core 3.1 para Ubuntu para iniciar la creación de aplicaciones de Service Fabric en C#. Los paquetes de aplicaciones de Service Fabric en .NET Core se hospedan en NuGet.org.

Configuración del desarrollo de Java

Para compilar servicios de Service Fabric mediante Java, instale Gradle para ejecutar las tareas de compilación. Ejecute el siguiente comando para instalar Gradle. Las bibliotecas de Java de Service Fabric se extraen de Maven.

  • Ubuntu

    curl -s https://get.sdkman.io | bash
    sdk install gradle 5.1
    
  • Red Hat Enterprise Linux 7.4 (compatibilidad con la versión preliminar de Service Fabric)

    sudo yum install java-1.8.0-openjdk-devel
    curl -s https://get.sdkman.io | bash
    sdk install gradle
    

También debe instalar el generador Yeo de Service Fabric para archivos ejecutables de Java. Asegúrese de que tiene Yeoman instalado y, a continuación, ejecute el siguiente comando:

npm install -g generator-azuresfjava

Instalación del complemento de Eclipse (opcional)

El complemento de Eclipse para Service Fabric se puede instalar desde el IDE de Eclipse para desarrolladores de Java o desarrolladores de Java EE. Eclipse se puede usar para crear aplicaciones ejecutables y contenedoras de invitado de Service Fabric, además de aplicaciones Java de Service Fabric.

Importante

El complemento de Service Fabric requiere Eclipse Neon o una versión posterior. Consulte las instrucciones que siguen a esta nota acerca de cómo comprobar la versión de Eclipse. Si tiene una versión anterior de Eclipse instalado, puede descargar las versiones más recientes de el sitio web de Eclipse. No es recomendable instalar (sobrescribir) sobre una instalación existente de Eclipse. Elimínela antes de ejecutar el programa de instalación o instale la versión más reciente en un directorio diferente.

En Ubuntu, se recomienda instalar directamente desde el sitio de Eclipse, en lugar de usar un instalador de paquetes (apt o apt-get). Si lo hace así, se asegura de que tendrá la versión más reciente de Eclipse. Puede instalar el IDE de Eclipse para desarrolladores de Java o para desarrolladores de Java EE.

  1. En Eclipse, asegúrese de que tanto Eclipse Neon, o posterior, como la versión 2.2.1 de Buildship, o posterior, están instalados. Para comprobar las versiones de los componentes instalados, seleccione Help>About Eclipse>Installation Details (Ayuda > Acerca de Eclipse > Detalles de instalación). Puede actualizar Buildship siguiendo las instrucciones de Eclipse Buildship: Complementos de Eclipse para Gradle.

  2. Para instalar el complemento de Service Fabric, seleccione Help>Install New Software (Ayuda > Instalar nuevo software).

  3. En el cuadro Work with (Trabajar con), escriba https://dl.microsoft.com/eclipse .

  4. Seleccione Agregar.

    Página de software disponible

  5. Seleccione el complemento ServiceFabric y, a continuación, seleccione Siguiente.

  6. Realice los pasos de instalación. Después, acepte el contrato de licencia para el usuario final.

Si el complemento de Eclipse para Service Fabric ya está instalado, asegúrese de que tiene la versión más reciente. Puede comprobarlo seleccionando Help>About Eclipse>Installation Details (Ayuda > Acerca de Eclipse > Detalles de instalación). A continuación, busque Service Fabric en la lista de complementos instalados. Seleccione Actualizar si hay disponible una versión más reciente.

Para más información, consulte Complemento de Service Fabric para el desarrollo de aplicaciones Java de Eclipse.

Actualización del SDK y del runtime

Para actualizar a la versión más reciente del SDK y el sistema en tiempo de ejecución, ejecute los siguientes comandos.

sudo apt-get update
sudo apt-get install servicefabric servicefabricsdkcommon

Para actualizar los archivos binarios del SDK de Java desde Maven, debe actualizar los detalles de la versión del archivo binario correspondiente en el archivo build.gradle para que señale a la versión más reciente. Para saber exactamente dónde debe actualizar la versión, consulte cualquier archivo build.gradle en los ejemplos de Introducción a Service Fabric.

Nota:

La actualización de los paquetes puede dar lugar a que se detenga el clúster de desarrollo local. Reinicie el clúster local después de cada actualización, para lo que debe seguir las instrucciones de este artículo.

Eliminación del SDK

Para quitar los SDK de Service Fabric, ejecute los siguientes comandos.

  • Ubuntu

    sudo apt-get remove servicefabric servicefabicsdkcommon
    npm uninstall -g generator-azuresfcontainer
    npm uninstall -g generator-azuresfguest
    sudo apt-get install -f
    
  • Red Hat Enterprise Linux 7.4 (compatibilidad con la versión preliminar de Service Fabric)

    sudo yum remove servicefabric servicefabicsdkcommon
    npm uninstall -g generator-azuresfcontainer
    npm uninstall -g generator-azuresfguest
    

Pasos siguientes