Microservices Engine (MSE) proporciona un agente de Java que añade capacidades de gobernanza a sus aplicaciones Spring Cloud o Dubbo existentes sin necesidad de modificar el código. El agente se adjunta a la JVM de su aplicación, intercepta las llamadas de servicio en tiempo de ejecución y aplica las directivas de gobernanza que usted configura en la consola de MSE.
Esta guía le muestra cómo descargar el agente de Java de MSE, configurarlo en una instancia de Elastic Compute Service (ECS) y comprobar la conexión. Los mismos pasos aplican para aplicaciones alojadas en máquinas virtuales (VMs) fuera de Alibaba Cloud.
Funcionamiento del agente
El agente de Java de MSE se ejecuta como un plugin de JVM (-javaagent). Durante el inicio, se autentica con el plano de control de MSE mediante su clave de licencia específica de la región; posteriormente, intercepta las llamadas de servicio entrantes y salientes para aplicar las directivas de gobernanza. El agente reporta los metadatos de la aplicación a la consola de MSE, donde su aplicación aparece en Microservices Governance > Application Governance.
Dado que MSE y Application Real-Time Monitoring Service (ARMS) comparten el mismo agente subyacente, un único parámetro -javaagent gestiona tanto la gobernanza como el monitoreo si utiliza ambos servicios.
Requisitos previos
Antes de empezar, asegúrese de contar con lo siguiente:
Una instancia ECS. Para obtener más información, consulte Create an ECS instance
Un Java Development Kit (JDK) instalado con la variable de entorno
JAVA_HOMEconfigurada. Para acceder a los enlaces de descarga, consulte Java DownloadsMemoria heap de la JVM superior a 256 MB. El agente de Java de MSE no puede iniciarse con una memoria heap menor
Una instancia de MSE Microservices Governance en la misma región que su instancia ECS. Las claves de licencia son específicas por región, por lo que una discrepancia provocará un error de autenticación en el agente
MSE Microservices Governance está disponible en tres ediciones: Basic Edition, Professional Edition y Enterprise Edition. Elija la edición que mejor se adapte a sus requisitos de gobernanza.
Paso 1: Descargar el agente de Java de MSE
Inicie sesión en la consola de ECS.
En el panel de navegación izquierdo, seleccione Instances & Images > Instances.
En la barra de navegación superior, seleccione una region.
En la página Instances, localice la instancia donde desea habilitar Microservices Governance y haga clic en Connect dentro de la columna Actions.
En el cuadro de diálogo Remote connection, elija un método de conexión. Para más detalles, consulte Methods for connecting to an ECS instance.
-
Descargue el paquete del agente. Reemplace
${regionId}con el ID real de su región (por ejemplo,cn-hangzhou). Para consultar la lista completa de IDs de región compatibles, vea Supported regions. Descarga a través de Internet: Descarga a través de VPC (recomendado si su instancia no tiene acceso a Internet): Por ejemplo, para descargar el agente en la región China (Hangzhou) mediante Internet:wget http://arms-apm-${regionId}.oss-${regionId}.aliyuncs.com/AliyunJavaAgent.zip \ -O AliyunJavaAgent.zipwget http://arms-apm-${regionId}.oss-${regionId}-internal.aliyuncs.com/AliyunJavaAgent.zip \ -O AliyunJavaAgent.zipwget http://arms-apm-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/AliyunJavaAgent.zip \ -O AliyunJavaAgent.zip
El paquete del agente es específico de cada región. Descargue siempre el paquete correspondiente a la región de su instancia de Microservices Governance.
Paso 2: Instalar y configurar el agente
-
Extraiga el paquete del agente en el directorio de su preferencia: Sustituya
<your-install-dir>por la ruta real del directorio, como/opt/mse.unzip AliyunJavaAgent.zip -d /<your-install-dir>/ -
Agregue los siguientes parámetros de JVM al comando de inicio de su aplicación: Reemplace los marcadores de posición siguientes con sus valores reales:
ImportanteLa memoria heap de la JVM debe ser superior a 256 MB. El agente no se iniciará si la memoria heap es menor.
Marcador de posición
Descripción
Ejemplo
<your-install-dir>Directorio donde extrajo el agente
/opt/mse<your-license-key>Clave de licencia obtenida en la consola de MSE. Vaya a Microservices Governance > Overview para encontrarla. No comparta esta clave.
abcdef1234****<your-app-name>Nombre que identifica a su aplicación en la consola de MSE
order-servicejava \ -javaagent:/<your-install-dir>/AliyunJavaAgent/aliyun-java-agent.jar \ -Dmse.licenseKey=<your-license-key> \ -Dmse.appName=<your-app-name> \ -Dprofiler.micro.service.mse.version=pro \ -Dmse.namespace=default \ -Dmse.enable=true \ -jar application.jar
Referencia de parámetros
|
Parámetro |
Descripción |
|
|
Clave de licencia generada por MSE, visible en la página Overview de Microservices Governance. Es específica de la región. Manténgala confidencial. |
|
|
Nombre para mostrar de su aplicación en la consola de MSE. |
|
|
Edición de gobernanza por habilitar. Valores válidos: |
|
|
Namespace de gobernanza al que pertenece esta aplicación. Consulte los namespaces disponibles en la consola de MSE. |
|
|
Establezca este valor en |
Si su aplicación ya utiliza ARMS
MSE y ARMS comparten el mismo agente de Java. Si el parámetro -javaagent ya está presente en su comando de inicio para ARMS, no lo agregue nuevamente. Solo añada los parámetros específicos de MSE (mse.licenseKey, mse.appName, profiler.micro.service.mse.version, mse.namespace y mse.enable) al comando existente.
Paso 3: Comprobar la conexión
Inicie sesión en la consola de MSE.
En la barra de navegación superior, seleccione la región que coincida con el despliegue de su aplicación.
En el panel de navegación izquierdo, seleccione Microservices Governance > Application Governance.
Confirme que su aplicación aparece en la lista de aplicaciones. De ser así, el agente está conectado y la gobernanza se encuentra activa.
Siguientes pasos
Una vez habilitada la gobernanza de Microservices, podrá gestionar sus aplicaciones Spring Cloud o Dubbo desde la consola de MSE. Utilice las funciones de gobernanza proporcionadas por MSE para mejorar la estabilidad y la eficiencia de desarrollo de sus aplicaciones de microservices en línea.