首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vagrantfile设置,允许在

Vagrantfile设置,允许在
EN

Unix & Linux用户
提问于 2017-10-22 09:32:08
回答 1查看 616关注 0票数 1

我有一本关于Ansible for Devops的书中的迷幻药文件。我的问题是,我可以SSH进入服务器,但Ansible不能。这是我的vagrantfile

代码语言:javascript
复制
# -*- mode: ruby -*-
# vi: set ft=ruby

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  # General Vagrant VM configuration
  config.vm.box = "geerlingguy/centos7"
  config.ssh.insert_key = false
  config.vm.synced_folder ".", "/vagrant", disabled: true
  config.vm.provider :virtualbox do |v|
    v.memory = 256
    v.linked_clone = true
 end

# Application server 1
  config.vm.define "app1" do |app|
    app.vm.hostname = "orc-app1.dev"
    app.vm.network :private_network, ip: "192.168.60.4"
 end

# Application server 2
  config.vm.define "app2" do |app|
    app.vm.hostname = "orc-app2.dev"
    app.vm.network :private_network, ip: "192.168.60.5"
 end

# Database server
  config.vm.define "db" do |db|
    db.vm.hostname = "orc-db.dev"
    db.vm.network :private_network, ip: "192.168.60.6"
 end
end

和我的hosts文件;

代码语言:javascript
复制
# Application servers
[app]
192.168.60.4
192.168.60.5
# Database servers
[db]
192.168.60.6

# Group 'multi' with all servers
[multi:children]
app
db

# Variables that will be appliedto all servers
[multi:vars]
ansible_ssh_user=vagrant
ansible_ssh_private_key_file=~/.vagrant.d/insecure_private_key

我知道我可以显式地添加ansible_ssh_port=2200等,但是我更希望在vagrantfile中设置它

EN

回答 1

Unix & Linux用户

发布于 2017-10-22 10:17:07

您正在使用ssh密钥对ansible进行身份验证,因此可以在迷航器中配置具有ssh密钥的用户,如下所示:

代码语言:javascript
复制
config.ssh.insert_key = true
config.ssh.username = "deploy-user"
config.ssh.private_key_path = "shared/deploy-user.pem"

我还建议ssh用户不要是root用户,而是在生产设置中具有sudo功能的用户。

另一种选择是将不可用用户rsa私钥/公钥手动放入一个新提供的系统中。这个地方是~ansible_user/..ssh/authorized_key

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/399677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档