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.