我正在尝试使用ansible的用户管理模块来设置RabbitMQ用户。
代码如下:
- rabbitmq_user:
user: "{{ rabbitmq_username }}"
password: "{{ rabbitmq_username }}"
vhost: /
configure_priv: .*
read_priv: .*
write_priv: .*
state: present
notify: restart rabbitmq
我的应用程序无法使用上述对RabbitMQ的凭据进行身份验证。另外,存放用户配置的 / etc / rabbitmq 文件夹为空。
这是我完整的任务文件,还安装了rabbitMQ。
---
- include_role:
name: geerlingguy.rabbitmq
vars:
rabbitmq_version: "3.7.9"
rabbitmq_daemon: rabbitmq-server
rabbitmq_state: started
rabbitmq_enabled: true
- rabbitmq_user:
user: "{{ rabbitmq_username }}"
password: "{{ rabbitmq_username }}"
vhost: /
configure_priv: .*
read_priv: .*
write_priv: .*
state: present
notify: restart rabbitmq
- name: Enable RabbitMQ management console
command: rabbitmq-plugins enable rabbitmq_management
我可以看到RabbitMQ已成功安装并启动,但是未创建用户。我什至无法使用以上凭据对Web UI进行身份验证。 为什么会发生这种情况以及如何解决此问题?
编辑(Ansible输出):
TASK [geerlingguy.rabbitmq : Ensure erlang is installed.] *********************************************************************************************************************************************************ok: [1.2.3.4]
TASK [geerlingguy.rabbitmq : Add packagecloud GPG key.] ***********************************************************************************************************************************************************skipping: [1.2.3.4]
TASK [geerlingguy.rabbitmq : Download RabbitMQ package.] **********************************************************************************************************************************************************skipping: [1.2.3.4]
TASK [geerlingguy.rabbitmq : Ensure RabbitMQ is installed.] *******************************************************************************************************************************************************skipping: [1.2.3.4]
TASK [geerlingguy.rabbitmq : Download RabbitMQ package.] **********************************************************************************************************************************************************ok: [1.2.3.4]
TASK [geerlingguy.rabbitmq : Ensure RabbitMQ is installed.] *******************************************************************************************************************************************************ok: [1.2.3.4]
TASK [geerlingguy.rabbitmq : Ensure rabbitmq is started and enabled (if configured).] *****************************************************************************************************************************ok: [1.2.3.4]
TASK [database : rabbitmq_user] ***********************************************************************************************************************************************************************************ok: [1.2.3.4]
Ansible版本:ansible 2.5.1
答案 0 :(得分:0)
经过很多头痛之后,我发现解决方案是由于Windows和Linux处理行尾的方式不同所致。
详细的解决方法here。
我不知道为什么这是由我的ansible脚本引起的,也许是由于我对编辑器的特定配置或其他原因造成的。但这确实解决了我的问题。