经过很长时间的停顿后,Ansible postgresql_db任务失败
以下ansible任务(在vagrant VM中)失败:
- name: ensure database is created postgresql_db: name={{dbname}} sudo_user: postgres 在失败之前,任务暂停几分钟 TASK: [postgresql | ensure database is created] ******************************* fatal: [192.168.78.6] => failed to parse: We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things: #1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility. [sudo via ansible,key=glxzviadepqkwddapvjheeuillbdakly] password: FATAL: all hosts have already failed -- aborting 我已经确认postgres是正确安装的 我也验证了我可以在VM中做一个“sudo su postgres”… ========更新 看起来问题是sudo_user:postgres,因为删除了 - name: say hello from postgress command: echo "hello" sudo_user: postgres 输出与上面完全相同,所以它确实是一个问题 一个有趣的观察,虽然我可以做“sudo su postgres” 当我调用“psql”(作为postgres用户)时,我收到消息: 无法将目录更改为“/ home / vagrant”:权限被拒绝 但psql shell仍然成功启动 ========结论 通过更改为库存中心框来解决问题, 经验教训:使用ansible / vagrant时,只使用库存操作系统映像…
我使用的是
wait for主机:
- local_action: wait_for port=22 host="{{PosgresHost}}" search_regex=OpenSSH delay=1 timeout=60 ignore_errors: yes PS: 我认为你应该使用gather_facts:False并在ssh启动后进行设置. --- - name: Setup hosts: all #connection: local user: root gather_facts: False roles: - main 示例角色/ main / tasks / main.yml - debug: msg="System {{ inventory_hostname }} " - local_action: wait_for port=22 host="{{ inventory_hostname}}" search_regex=OpenSSH delay=1 timeout=60 ignore_errors: yes - action: setup ansible-playbook -i 127.0.0.1,main.yml PLAY [Setup] ****************************************************************** TASK: [main | debug msg="System {{ inventory_hostname }} "] ******************* ok: [127.0.0.1] => { "msg": "System 127.0.0.1 " } TASK: [main | wait_for port=22 host="{{ inventory_hostname}}" search_regex=OpenSSH delay=1 timeout=60] *** ok: [127.0.0.1 -> 127.0.0.1] PLAY RECAP ******************************************************************** 127.0.0.1 : ok=2 changed=0 unreachable=0 failed=0 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 正式发布jmyetl-1.0.2:一个表数据导入导出的ETL工具
- Hybrid--WebView中使用Ajax
- Ruby散列到JavaScript
- Oracle SQL:在多个列/字段上进行透视
- ruby-on-rails – 在Rails 4.0.4应用程序中找不到文件’tur
- Swift3的playground中对UI直接测试支持的改变
- Swift高级开发语言--枚举,继承,协议,扩展
- c# – 无法运行负载测试,因为Visual Studio使用xml编辑器打
- ruby-on-rails-3 – 尝试在发出POST请求的所选页面上实现HT
- ruby-on-rails – 每当没有Capistrano的宝石时,我可以使用R