【问题标题】:Ansible set up Rails VPSAnsible 设置 Rails VPS
【发布时间】:2016-03-18 23:11:02
【问题描述】:

我正在使用 Ansible 设置 VPS。这是我的 build_server yaml 文件:

---
- hosts: do_server
  vars_files:
    - vars/defaults.yml
  sudo: yes
  remote_user: root
  roles:
    - { role: create-deploy-user, tags: ['create-deploy-user'] }


- hosts: do_server
  vars_files:
    - vars/defaults.yml
  remote_user: "{{ deploy }}"
  gather_facts: no
  roles:
    ### Server provisioning roles:
    - { role: linux-prereqs, tags: ['linux-prereqs'] }
    - { role: postgresql, tags: ['postgresql'] }
    - { role: rbenv, tags: ['rbenv'] }
    - { role: ruby, tags: ['ruby'] }
    - { role: nginx-passenger, tags: ['nginx-passenger'] }

    ### Site specific roles:
    - { role: prepare_site, tags: ['prepare_site'] }

它沿着文件运行,直到它到达 linux-prereqs 角色。在这里我得到一个错误:“缺少成为密码”。

我对此有点困惑,因为我没有为我的“部署”用户设置密码,而是在创建用户的过程中添加了我的 SSH 密钥,所以我肯定应该已经获得授权了吗?我的创建部署用户任务是:

- name: create {{ deploy }} user
  user:
    name: "{{ deploy }}"
    comment: "deploy user"
    generate_ssh_key: yes
    state: present
    shell: /bin/bash

- name: authorize my SSH key to access {{ deploy }}
  authorized_key:
    key: "{{ lookup('file', '/Users/neil/.ssh/id_rsa.pub') }}"
    user: "{{ deploy }}"
    state: present

- name: add {{ deploy }} to sudoers
  lineinfile: "dest=/etc/sudoers state=present line='{{ deploy }} ALL=(ALL:ALL) ALL'"

- name: create www-data group
  group:
    name: www-data
    state: present

有什么想法吗?

【问题讨论】:

    标签: unix ubuntu ssh ansible vps


    【解决方案1】:

    您的部署用户没有无密码 sudo ({{ deploy }} ALL=(ALL:ALL) ALL'),因此一旦 Ansible 尝试执行任何需要提升权限的操作,就会提示您输入用户密码。由于您没有通过 CLI 或作为变量提供,因此 Ansible 将失败。

    要解决此问题,请通过 CLI 或在变量中指定部署用户的密码,或者将您的 sudoers 文件任务更改为以下内容:

    - name: add {{ deploy }} to sudoers
      lineinfile: "dest=/etc/sudoers state=present line='{{ deploy }} ALL=(ALL) NOPASSWD:ALL'"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-10
      • 2017-05-14
      • 2011-08-30
      相关资源
      最近更新 更多