Contenu

Introduction

Conditions préalables

Conditions requises

Problème

Solution

Introduction

Ce document décrit comment résoudre l'erreur « Connexion refusée » dans CiscoCloud Orchestrator (CCO) lors d'une tentative de connexion à Rabbit

Conditions préalables

Conditions requises

- Les informations de ce document sont basées sur CloudCenter 4.x

- CiscoCloud Orchestrator (CCO)

- Serveur de lapin (AMQP)

- Accès racine à CCO et AMQP

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Problème

Dans les nouveaux déploiements ou après une modification du nom d’hôte du serveur Rabbit, CCO reçoit une erreur pour établir la connexion avec Rabbit avec l’ERREUR suivante

2018-04-17 23:58:52,180 ERROR listener.SimpleMessageListenerContainer [rabbitListenerContainer-1]  - Failed to check/redeclare auto-delete queue(s).

org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused (Connection refused)

at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:62) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:368) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.createConnection(CachingConnectionFactory.java:573) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.core.RabbitTemplate.doExecute(RabbitTemplate.java:1430) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:1411) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:1387) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.core.RabbitAdmin.getQueueProperties(RabbitAdmin.java:336) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.redeclareElementsIfNecessary(SimpleMessageListenerContainer.java:1171) [spring-rabbit-1.7.4.RELEASE.jar!/:?]

at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1422) [spring-rabbit-1.7.4.RELEASE.jar!/:?]

at java.lang.Thread.run(Thread.java:748) [?:1.8.0_162]

Caused by: java.net.ConnectException: Connection refused (Connection refused)

at java.net.PlainSocketImpl.socketConnect(Native Method) ~[?:1.8.0_162]

at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[?:1.8.0_162]

at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[?:1.8.0_162]

at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[?:1.8.0_162]

at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[?:1.8.0_162]

at java.net.Socket.connect(Socket.java:589) ~[?:1.8.0_162]

at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:673) ~[?:1.8.0_162]

at com.rabbitmq.client.impl.SocketFrameHandlerFactory.create(SocketFrameHandlerFactory.java:50) ~[amqp-client-4.0.3.jar!/:4.0.3]

at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:907) ~[amqp-client-4.0.3.jar!/:4.0.3]

at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:859) ~[amqp-client-4.0.3.jar!/:4.0.3]

at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:799) ~[amqp-client-4.0.3.jar!/:4.0.3]

at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:352) ~[spring-rabbit-1.7.4.RELEASE.jar!/:?]

... 8 more

Solution

Étape 1. Se connecter au serveur Rabbit

Étape 2. répertorier les connexions dans le serveur Rabbit

[root@rabbit-490 ~]# rabbitmqctl list_connections -p /cliqr

Listing connections

Étape 3. Rechercher le fichier RABBITINSTALLED

[root@rabbit-490 ~]# ls -lrt  /usr/local/osmosix/etc/.RABBITINSTALLED

-rw-r--r-- 1 root root 0 Apr 17 23:40 /usr/local/osmosix/etc/.RABBITINSTALLED

Étape 4. Supprimez le fichier.

[root@rabbit-490 ~]# rm -rf  /usr/local/osmosix/etc/.RABBITINSTALLED

[root@rabbit-490 ~]# ls -lrt  /usr/local/osmosix/etc/.RABBITINSTALLED

[root@rabbit-490 ~]#

Étape 5. Exécuter le fichier rabbit_config.sh

[root@rabbit-490 ~]# cd /usr/local/cliqr/bin/

root@rabbit-490 bin]# ls -lrt

total 80

-rwxr-xr-x 1 cliqruser cliqruser 23235 Apr  9 16:12 wizard_util.sh

-rwxr-xr-x 1 cliqruser cliqruser 12133 Apr  9 16:12 props_migration_481_to_482.sh

-rw-r--r-- 1 cliqruser cliqruser   236 Apr  9 16:12 props_481_to_482_rabbit.csv

-rwxr-xr-x 1 cliqruser cliqruser  4004 Apr  9 16:12 gua_config_wizard.sh

-rwxr-xr-x 1 cliqruser cliqruser  3553 Apr  9 16:12 gua_config_cli.sh

-rwxr-xr-x 1 cliqruser cliqruser  8966 Apr 10 02:40 rabbit_config_cli.sh

-rwxr-xr-x 1 cliqruser cliqruser  9394 Apr 10 02:40 rabbit_config_wizard.sh

-rwxr-xr-x 1 cliqruser cliqruser  1290 Apr 10 02:41 rabbit_config.sh

-rwxr-xr-x 1 cliqruser cliqruser   279 Apr 10 02:41 startup_services.sh

[root@rabbit-490 bin]# ./rabbit_config.sh

Adding vhost /cliqr

Creating vhost "/cliqr"

Adding user cliqr

Creating user "cliqr"

Setting permissions for user "cliqr" in vhost "/cliqr"

Setting cliqr as admin

Setting tags for user "cliqr" to [administrator]

Enable management plugin

Plugin configuration unchanged.

Applying plugin configuration to rabbit@rabbit-490... nothing to do.

Adding cliqr_worker

Creating user "cliqr_worker"

Setting permissions for user "cliqr_worker" in vhost "/cliqr"

Étape 6. Connectez-vous à CCO en tant que root

Étape 7. Redémarrer le service CCO

[root@cco-490 ~]# systemctl start cco

[root@cco-490 ~]#

Étape 8. Vérifier que CCO est en cours d'exécution

[root@cco-490 ~]# systemctl status cco

● cco.service - Cloud Center Orchestrator

Loaded: loaded (/etc/systemd/system/cco.service; enabled; vendor preset: disabled)

Active: active (exited) since Wed 2018-04-18 22:02:09 UTC; 5min ago

Process: 3329 ExecStart=/bin/true (code=exited, status=0/SUCCESS)

Main PID: 3329 (code=exited, status=0/SUCCESS)

Tasks: 0

Memory: 0B

CGroup: /system.slice/cco.service

Apr 18 22:02:09 cco-490 systemd[1]: Starting Cloud Center Orchestrator...

Apr 18 22:02:09 cco-490 systemd[1]: Started Cloud Center Orchestrator.

[root@cco-490 ~]#

Étape 9. Connectez-vous au lapin en tant que racine

Étape 10. Indiquez le nombre de connexions

[root@rabbit-490 bin]# rabbitmqctl list_connections -p /cliqr

Listing connections

cliqr_worker 10.31.127.24 50556 running

cliqr 10.31.127.24 50568 running

Vous pouvez maintenant voir comment se connecter à partir de CCO, cliqr_worker et cliqr.