Instalación y configuración de Configuration Center Apollo

Dirección del sitio web oficial: http://apollo.auto/

Dirección de GitLab: https://github.com/ctripcorp/apollo

Arquitectura general

Instalación y configuración de Configuration Center Apollo

  1. Liberación de configuración de usuario en funcionamiento del Portal

  2. Lanzamiento de la operación de la interfaz del servicio de administración de llamadas al portal

  3. Después de que Admin Service publica la configuración, envía ReleaseMessage a cada Config Service

  4. Después de que el servicio de configuración recibe el ReleaseMessage, notifica al cliente correspondiente

Principio de realización

Instalación y configuración de Configuration Center Apollo
La figura anterior describe brevemente el principio de implementación del cliente Apollo:

  1. El cliente y el servidor mantienen una conexión prolongada, por lo que la actualización de la configuración se puede enviar lo antes posible. (Logrado por Http Long Polling)

  2. El cliente también extraerá periódicamente la última configuración de la aplicación del servidor del centro de configuración de Apollo.
  • Este es un mecanismo de respaldo, para evitar que el mecanismo de empuje falle y la configuración no se actualice

  • El cliente informará la versión local al tirar regularmente, por lo que en general, para la operación de extracción regular, el servidor devolverá 304-No modificado

  • De forma predeterminada, la frecuencia de tiempo se extrae cada 5 minutos y el cliente también se puede anular especificando la propiedad del sistema: apollo.refreshInterval en tiempo de ejecución, en minutos.

1. Una vez que el cliente obtenga la última configuración de la aplicación del servidor del centro de configuración de Apollo, se guardará en la memoria.

2. El cliente almacenará en caché una copia de la configuración obtenida del servidor en el sistema de archivos local.

  • Cuando el servicio no está disponible o la red no está disponible, la configuración aún se puede restaurar desde el local.

1. La aplicación puede obtener la última configuración del cliente Apollo y suscribirse a las notificaciones de actualización de la configuración.

Instalación de MySQL

Requisitos de la versión: 5.6.5+
Host: 10.2.42.28
Borrar paquetes dependientes de mysql:

rpm -qa | grep mysql

yum remove mysql-libs

Instale mysql5.7: Secuencia de instalación: común → libs → cliente → servidor

rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm

Interfaz de instalación exitosa:

[root@DCA-APP-COM-apollo02 mysql]# rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm

warning: mysql-community-common-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:mysql-community-common-5.7.26-1.e################################# [100%]

[root@DCA-APP-COM-apollo02 mysql]# rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm

warning: mysql-community-libs-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:mysql-community-libs-5.7.26-1.el7################################# [100%]

[root@DCA-APP-COM-apollo02 mysql]# rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm

warning: mysql-community-client-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:mysql-community-client-5.7.26-1.e################################# [100%]

[root@DCA-APP-COM-apollo02 mysql]# rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm

warning: mysql-community-server-5.7.26-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

Preparing...                          ################################# [100%]

Updating / installing...

   1:mysql-community-server-5.7.26-1.e################################# [100%]

Inicie mysql:

service mysqld start

inicialización de mysql:

[root@DCA-APP-COM-apollo02 mysql]# grep 'temporary password' /var/log/mysqld.log

2019-07-17T14:10:02.559365Z 1 [Note] A temporary password is generated for root@localhost: %hNW)P3Ly,8v

[root@DCA-APP-COM-apollo02 mysql]# mysql -uroot -p

Enter password: 

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.7.26

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

# 更改密码长度

mysql> set global validate_password_length=1;

Query OK, 0 rows affected (0.00 sec)

# 更改密码强度

mysql> set global validate_password_policy=0;

Query OK, 0 rows affected (0.00 sec)

mysql> set password for root@localhost=password('123456');

Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> grant all privileges on *.* to 'root' @'%' identified by '123456';

Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

Creación de la base de datos Apollo: descarga de SQL usted mismo en el sitio web oficial

mysql> source apolloconfigdb.sql;

mysql> source apolloportaldb.sql;

Autorización de usuario de conexión Msyql:

mysql> grant all privileges on ApolloConfigDB.* to Apollo@'%' IDENTIFIED BY 'Apollo' ;

Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> grant all privileges on ApolloPortalDB.* to Apollo@'%';

Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

Cambios en la configuración de la base de datos:

ApolloPortalDB:
Instalación y configuración de Configuration Center Apollo

ApolloConfigDB:
Instalación y configuración de Configuration Center Apollo

Instalación de Apolo

Dirección oficial: https://github.com/ctripcorp/apollo
Esta versión de prueba es: 0.10.2
Dirección de descarga: https://github.com/ctripcorp/apollo/releases/tag/v0.10.2
apollo-adminservice-0.10. 2-github.zip
apollo-configservice-0.10.2-github.zip
apollo-portal-0.10.2-github.zip

apollo-config

Host: 10.2.42.27
Crear usuario apollo:

groupadd apollo && useradd -g apollo apollo

Configurar configserver:

cd /home/apollo/

mkdir apollo-config

unzip apollo-configservice-0.10.2-github.zip -d apollo-config

Configuración de ApolloconfigDB:

vim apollo-config/config/application-github.properties

# DataSource

spring.datasource.url = jdbc:mysql://10.2.42.28:3306/ApolloConfigDB?characterEncoding=utf8

spring.datasource.username = Apollo

spring.datasource.password = Apollo

Ruta de registro y modificación de parámetros de JVM: parte de la configuración, no es necesario modificar la siguiente configuración

vim apollo-config/scripts/startup.sh

# 修改日志路径

LOG_DIR=/home/apollo/logs/100003171

# 默认端口

SERVER_PORT=8080

# 默认注释看需求打开

## Adjust memory settings if necessary

export JAVA_OPTS="-Xms6144m -Xmx6144m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:NewSize=4096m -XX:MaxNewSize=4096m -XX:SurvivorRatio=8"

Inicie Apollo-configservice:

cd /home/apollo/

chown -R apollo.apollo *

su apollo

./apollo-config/scripts/startup.sh

Inicio exitoso:

Thu Jul 18 15:06:53 CST 2019 ==== Starting ==== 

Started [53700]

Waiting for server startup......

Thu Jul 18 15:07:24 CST 2019 Server started in 30 seconds!

apollo-admin

Anfitrión: 10.2.42.28

groupadd apollo && useradd -g apollo apollo

cd /home/apollo/

mkdir {apollo-admin,apollo-portal}

unzip apollo-adminservice-0.10.2-github.zip -d apollo-admin

unzip apollo-portal-0.10.2-github.zip -d apollo-portal

Configuración de ApolloconfigDB:

cd apollo-admin

vim config/application-github.properties

# DataSource

spring.datasource.url = jdbc:mysql://10.2.42.28:3306/ApolloConfigDB?characterEncoding=utf8

spring.datasource.username = Apollo

spring.datasource.password = Apollo

Ruta de registro y configuración de parámetros de JVM: parte de la configuración, esta última configuración no necesita ser modificada

vim scripts/startup.sh

#!/bin/bash

SERVICE_NAME=apollo-adminservice

## Adjust log dir if necessary

LOG_DIR=/home/apollo/logs/100003172

## Adjust server port if necessary

SERVER_PORT=8090

## Adjust memory settings if necessary

export JAVA_OPTS="-Xms2560m -Xmx2560m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:NewSize=1536m -XX:MaxNewSize=1536m -XX:SurvivorRatio=8"

Inicie apollo-admin:

cd /home/apollo/

chown -R apollo.apollo *

su apollo

./scripts/startup.sh

Thu Jul 18 16:17:32 CST 2019 ==== Starting ==== 

Started [56497]

Waiting for server startup......

Thu Jul 18 16:18:02 CST 2019 Server started in 30 seconds!

portal de apolo

Host:
10.2.42.28 configuración de apolloportlDB:

cd /home/apollo/apollo-portal

vim config/application-github.properties

# DataSource

spring.datasource.url = jdbc:mysql://10.2.42.28:3306/ApolloPortalDB?characterEncoding=utf8

spring.datasource.username = Apollo

spring.datasource.password = Apollo

configuración de configservice: un conjunto de portal puede administrar múltiples configservices, o se puede configurar directamente en el script startup.sh

vim config/apollo-env.properties

local.meta=http://localhost:8080

dev.meta=http://10.2.42.27:8080

fat.meta=http://10.2.42.27:8080

uat.meta=${lpt_meta}

lpt.meta=${lpt_meta}

pro.meta=${lpt_meta}

Ruta de registro y modificación de parámetros de JVM: parte de la configuración, no es necesario modificar la siguiente configuración

vim scripts/startup.sh

#!/bin/bash

SERVICE_NAME=apollo-portal

## Adjust log dir if necessary

LOG_DIR=/home/apollo/logs/100003173

## Adjust server port if necessary

SERVER_PORT=8070

## Adjust memory settings if necessary

export JAVA_OPTS="-Xms2560m -Xmx2560m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:NewSize=1536m -XX:MaxNewSize=1536m -XX:SurvivorRatio=8"

apollo-portal comienza:

su apollo

./scripts/startup.sh

Thu Jul 18 16:25:55 CST 2019 ==== Starting ==== 

Started [56773]

Waiting for server startup...

Thu Jul 18 16:26:10 CST 2019 Server started in 15 seconds!

Uso de Apolo

Visualización de la página del servidor: 10.2.42.27:8080
Instalación y configuración de Configuration Center Apollo

Visualización de la página del centro de configuración: 10.2.42.28:8070
apollo / admin
Instalación y configuración de Configuration Center Apollo

Creación de proyectos:

Instalación y configuración de Configuration Center Apollo

Instalación y configuración de Configuration Center Apollo

Supongo que te gusta

Origin blog.51cto.com/15080014/2654773
Recomendado
Clasificación