2017-04-06 70 views
0

我使用PackerAnsible来烘烤AWS AMI。似乎在Packer运行大约6分钟左右之后,该过程将失败。除了大约6分钟,我似乎无法找到正在发生的事情的合理解释。 Ansbile操作手册将在一路上的不同点上失败,但始终在我启动Packer后大约6分钟。使用Packer与AWS上的Ansible进行的看似随机超时

当我遇到这个问题时,我总是得到Ansible错误。我要么Timeout (12s) waiting for privilege escalation prompt:Connection to 127.0.0.1 closed.\r\n

有没有办法延长与playbook或Packer builder相关的超时?

帕克文件内容:

{ 
    "provisioners": [{ 
    "type": "ansible", 
    "playbook_file": "../ansible/nexus.yml" 
    }], 

    "builders": [{ 
    "type": "amazon-ebs", 
    "region": "us-east-2", 
    "source_ami_filter": { 
     "filters": { 
      "virtualization-type": "hvm", 
      "name": "amzn-ami-hvm*-gp2", 
      "root-device-type": "ebs" 
     }, 
     "owners": ["137112412989"], 
     "most_recent": true 
    }, 
    "instance_type": "t2.medium", 
    "ami_virtualization_type": "hvm", 
    "ssh_username": "ec2-user", 
    "ami_name": "Nexus (Latest Amazon Linux Base) {{isotime \"2006-01-02T15-04-05-06Z\"| clean_ami_name}}", 
    "ami_description": "Nexus AMI", 
    "run_tags": { 
     "AmiName": "Nexus", 
     "AmiCreatedBy": "Packer" 
    }, 
    "tags": { 
     "Name": "Nexus", 
     "CreatedBy": "Packer" 
    } 
    }] 
} 
+0

这不是一个派克问题,而是一个Ansible问题。你可以添加你的剧本,也许重新运行''extra_arguments“:[”-vvv“]'从Ansible获得更多的调试输出。 –

回答

0

我解决了这个问题,在Ansible配置文件中添加下列参数:

[defaults] 
forks = 1 

[ssh_connection] 
ssh_args = -o ControlMaster=no -o ControlPath=none -o ControlPersist=no 
pipelining = false 

希望它能帮助。