Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CloudStack acquire Public IP address #87

Closed
ezisezis opened this issue Jun 10, 2015 · 25 comments
Closed

CloudStack acquire Public IP address #87

ezisezis opened this issue Jun 10, 2015 · 25 comments

Comments

@ezisezis
Copy link

Hey, is it possible for this plugin to acquire public IP address automatically to access the box via SSH later? If I just point the config to network "test' who has several acquired public IP`s, one of them being 22.22.22.22 for example, how can I get my box to use this IP and open SSH firewall from my ip(33.33.33.33) to it? My Vagrantfile now:

 # -*- mode: ruby -*-
 # vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "dummy"
  config.vm.provider :cloudstack do |cloudstack, override|
    cloudstack.private_ip_address = "22.22.22.22"
  override.ssh.host = "22.22.22.22"
cloudstack.static_nat = [
  { :ipaddress => "22.22.22.22"}
]

cloudstack.firewall_rules = [
  { :ipaddress => "22.22.22.22", :cidrlist  => "33.33.33.33/32", :protocol => "icmp", :icmptype => 8, :icmpcode => 0 },
  { :ipaddress => "22.22.22.22", :cidrlist  => "33.33.33.33/32", :protocol => "tcp", :startport => 22, :endport => 22 },
  { :ipaddress => "22.22.22.22", :cidrlist  => "33.33.33.33/32", :protocol => "tcp", :startport => 80, :endport => 80 },
]
override.ssh.private_key_path = "/home/ezis/.vagrant.d/vagrant.key"

cloudstack.host = "mycloud.cloudstack.test"
cloudstack.path = "/client/api"
cloudstack.port = "443"
cloudstack.scheme = "https"
cloudstack.api_key = "i..........AKRuigA"
cloudstack.secret_key = "2j_G..............FXw"

cloudstack.template_name = "vagrant"
cloudstack.service_offering_name = "Cloud Server 1 vCPU, 1 GB RAM"
cloudstack.network_name = "test"
cloudstack.zone_name = "Cloud-1"
cloudstack.name = "edik123"
instance_ready_timeout = "300"

  end
end
@miguelaferreira
Copy link
Contributor

Hi.
As of now the plugin does not have that functionality.
I've tagged this issue as an enhancement and hopefully someone will pick it up soon. We do have some more issues reported earlier and we are busy with them.
But feel free to fork the project, add the functionality and make a PR.
We are giving priority to merging PRs over picking up new issues.

Cheers,

@ezisezis
Copy link
Author

What do these 3 variables actually do? Could You please explain in more detail? I have an idea but not 100% sure.

cloudstack.private_ip_address
override.ssh.host
cloudstack.static_nat

@miguelaferreira
Copy link
Contributor

The difference between cloudstack.variable and override.variable is in that cloudstack can have predefined values for some things (e.g. templates and service offerings). These predefined values are typically tied to a domain within cloudstack.
If you are spinning up a VM in a domain with predefined values and you want to override those you need to use the form override.variable.

Now regarding the specific variables you mention:

  • private_ip_address - allows you to specify which IP address you want the VM to have. This is only for advanced networking and not required. If you do not specify this variable cloudstack will choose the IP for you.
  • ssh.host - is a configuration variable of vagrant (not vagrant-cloudstack). It allows you to set the IP or hostname of the machine vagrant tries to login to when you do vagrant ssh. You do not typically need to set this because vagrant will figure it out for you. The overrideprefix instructs vagrant to use this value instead of the value it would discover. In the README.md example you see that this variable is set in conjunction with specific port forwarding and firewall rules. You can find more info on this here: http://docs.vagrantup.com/v2/vagrantfile/ssh_settings.html
  • static_nat - allows you to assign an IP in static NAT mode to a VM. You can find more information on this here: https://github.com/apache/cloudstack-docs-admin/blob/master/source/networking/static_nat.rst

Hope this helps. Let me know if you have anymore questions.

@ezisezis
Copy link
Author

Thank You for Your explanation. But isn't static_nat variable the one that I need to acquire a public address? Link You provided says - maps a public IP address to the private IP address of a VM in order to allow Internet traffic into the VM...
That is exactly what I was asking and how can this be done? For example:
I acquire a public IP through CloudStack UI but do not assign it to anyone. In my Vagrantfile i set cloudstack.static_nat to the acquired IP, should't vagrant-cloudstack plugin map that IP to the newly created VM?

@miguelaferreira
Copy link
Contributor

I can't be sure about Basic networking because I've never used it, nor do I have a way to test against it.
AFAIK, in Basic networking all VMs get a public IP address at creation.

In the case of Advanced networking, you do need to have acquired an IP in a network before you can enable the static NAT on it.

@ezisezis
Copy link
Author

My network type is advanced, but IF I set cloudstack.network_type = "advanced" ,then I get an error message with no further explanation (even in debug mode)

Required network offering id=8 is not in Enabled

I have 3 different network offerings and they all are enabled and also I don't understand where does the plugin get this id=8, i don't have it set anywhere.
If I comment out the network_type then the VM just does not acquire the IP.

@miguelaferreira
Copy link
Contributor

It might be that the API is case sensitive. Have you tried "Advanced"?

@ezisezis
Copy link
Author

I have tried both, but it seems to be ignoring it at all if I type it with a capital letter.

@miguelaferreira
Copy link
Contributor

What do you mean by ignoring it at all?

@ezisezis
Copy link
Author

It acts like i have just commented it out if I set cloudstack.network_type = "Advanced" but if I set cloudstack.network_type = "advanced" with a small letter, then it throws an error mentioned above.

# -*- mode: ruby -*-
# vi: set ft=ruby :

  Vagrant.configure("2") do |config|
 config.vm.box = "dummy"
 config.vm.provider :cloudstack do |cloudstack, override|
   cloudstack.static_nat = [
     { :ipaddress => "ACQUIRED_IP"}
   ]

cloudstack.firewall_rules = [
  { :ipaddress => "ACQUIRED_IP", :cidrlist  => "MY_IP/32", :protocol => "icmp", :icmptype => 8, :icmpcode => 0 },
  { :ipaddress => "ACQUIRED_IP", :cidrlist  => "MY_IP/32", :protocol => "tcp", :startport => 22, :endport => 22 },
  { :ipaddress => "ACQUIRED_IP", :cidrlist  => "MY_IP/32", :protocol => "tcp", :startport => 80, :endport => 80 },
]
override.ssh.private_key_path = "/home/ezis/.vagrant.d/vagrant.key"

cloudstack.host = "mycloud"
cloudstack.path = "/client/api"
cloudstack.port = "443"
cloudstack.scheme = "https"
cloudstack.api_key = "ijQw9.............JcNjQw6QMG"
cloudstack.secret_key = "2j....................Xw"

cloudstack.template_name = "vagrant"
cloudstack.service_offering_name = "Cloud Server 1 vCPU, 1 GB RAM"
cloudstack.network_name = "test"
cloudstack.zone_name = "Cloud-1"
cloudstack.name = "edik"
cloudstack.network_type = "advanced" # or "Basic"
instance_ready_timeout = "300"
cloudstack.expunge_on_destroy = "true"

  end
end

Also, this is not working - cloudstack.expunge_on_destroy = "true" how should it be set correctly?

@miguelaferreira
Copy link
Contributor

To me that means that the correct setting is cloudstack.network_type = "Advanced". The fact that the error goes away confirms it.

The expunge option takes a boolean, so you should set it like cloudstack.expunge_on_destroy = true

@ezisezis
Copy link
Author

Okay, with the configuration above (changed network_type to Advanced with capital), it creates the VM as before, but it tries to connect to non-public IP address - for example 10.1.1.208, is it possible to attach a public IP as well?

@miguelaferreira
Copy link
Contributor

So what you need to do is to acquire a public IP in cloudstack (because the vagrant-cloudstack does not do that for you) and configure that in your vagrant file.

Assuming the public IP you acquired is A.A.A.A, your vagrant file should include the following configuration:

cloudstack.pf_ip_address  = "A.A.A.A"
cloudstack.pf_public_port  = '2222'
cloudstack.pf_private_port = '22'

I would recommend that you set the pf_public_port to something different than 22 (e.g. 2222).
This will however, open he firewall to the entire internet. If you want to make it a bit more secure, you can restrict the source IPs that are allowed to go through the firewall.
Assuming that that IP you are using to access the VM is B.B.B.B, the configuration would look like this:

cloudstack.pf_ip_address  = "A.A.A.A"
cloudstack.pf_public_port  = '2222'
cloudstack.pf_private_port = '22'
cloudstack.pf_open_firewall = false
cloudstack.firewall_rules = [
  {
    ipaddress: "A.A.A.A",
    cidrlist:  "B.B.B.B",
    protocol:  'tcp',
    startport: 2222,
    endport:  2222
  }
]

@ezisezis
Copy link
Author

Did it but it still acquires only the non-public IP (e.g. 10.1.1.240), cant seem to find the right config, I did it as you told:

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "dummy"
#  config.ssh.insert_key = "true"
#  config.ssh.password = "vagrant"  
config.vm.provider :cloudstack do |cloudstack, override|

#    cloudstack.static_nat = [
#    { :ipaddress => "A.A.A.A"}
#    ]
cloudstack.pf_ip_address = "A.A.A.A"
cloudstack.pf_public_port = '22'
cloudstack.pf_private_port = '22'
cloudstack.pf_open_firewall = false
cloudstack.firewall_rules = [
{
ipaddress: "A.A.A.A",
cidrlist:  "B.B.B.B/32",
protocol:  'tcp',
startport: 22,
endport:  22
}
]

override.ssh.private_key_path = "/home/ezis/.vagrant.d/vagrant.key"
cloudstack.host = "mycloud="
cloudstack.path = "/client/api"
cloudstack.port = "443"
cloudstack.scheme = "https"
cloudstack.api_key = "ijQ.......A"
cloudstack.secret_key = "2j_.........FXw"

cloudstack.template_name = "vagrant"
cloudstack.service_offering_name = "Cloud Server 1 vCPU, 1 GB RAM"
cloudstack.network_name = "test"
cloudstack.zone_name = "Cloud-1"
cloudstack.name = "edik"
cloudstack.network_type = "Advanced" # or "Basic"
instance_ready_timeout = "300"
cloudstack.expunge_on_destroy = true

  end
end

@ezisezis
Copy link
Author

Can anyone comment on my config? Help with this setup? Please, any help will be appreciated.

@miguelaferreira
Copy link
Contributor

Hi @ezisezis

The config you posted has a few problems, namely with the IP addresses.
You are using 'A.A.A.A' and 'B.B.B.B' as I mentioned in the example I gave you. Those are not valid IP addresses!
You need to replace those strings with the appropriate values. The 'A.A.A.A' string should be replaced by the public IP you have already acquired in your network (which in your config is named test). The 'B.B.B.B' should be replaced by the IP address the machine you are running vagrant un uses to access the internet. If you are behind a router, you should used the public IP address of that router.

And again, vagrant-cloudstack will not acquire the IP for you. You need to that yourself before running vagrant.

@ezisezis
Copy link
Author

Obviously I am using valid IPs but I dont want to show them to everyone. I acquire an IP myself, all I want vagrant to do is to bind it to my newly created server whitch it does not do.

@miguelaferreira
Copy link
Contributor

Well, I guess you have also acquired a public IP and configured that in your vagrant file?

Can you please post the output of vagrant?

@ezisezis
Copy link
Author

Exacly. Lets say i have acquired an IP of 2.2.2.2 (A.A.A.A) and my public IP from which I want to access the server is 3.3.3.3 (B.B.B.B), but vagrant does not bind this 2.2.2.2 IP to server, it tries to SSH to non-public IP (e.g. 10.10.1.220).

@miguelaferreira
Copy link
Contributor

Can you post the output of vagrant up --debug?

@ezisezis
Copy link
Author

 INFO global: Vagrant version: 1.7.2
 INFO global: Ruby version: 2.0.0
 INFO global: RubyGems version: 2.0.14
 INFO global: VAGRANT_EXECUTABLE="/opt/vagrant/bin/../embedded/gems/gems/vagrant-1.7.2/bin/vagrant"
 INFO global: VAGRANT_INSTALLER_EMBEDDED_DIR="/opt/vagrant/bin/../embedded"
 INFO global: VAGRANT_INSTALLER_VERSION="2"
 INFO global: VAGRANT_DETECTED_OS="Linux"
 INFO global: VAGRANT_INSTALLER_ENV="1"
 INFO global: VAGRANT_INTERNAL_BUNDLERIZED="1"
 INFO global: VAGRANT_LOG="debug"
 INFO global: Plugins:
 INFO global:   - builder = 3.2.2
 INFO global:   - bundler = 1.7.11
 INFO global:   - excon = 0.45.3
 INFO global:   - formatador = 0.2.5
 INFO global:   - mime-types = 1.25.1
 INFO global:   - net-ssh = 2.9.2
 INFO global:   - net-scp = 1.1.2
 INFO global:   - fog-core = 1.30.0
 INFO global:   - multi_json = 1.11.0
 INFO global:   - fog-json = 1.0.1
 INFO global:   - inflecto = 0.0.2
 INFO global:   - fog-brightbox = 0.7.1
 INFO global:   - ipaddress = 0.8.0
 INFO global:   - mini_portile = 0.6.0
 INFO global:   - nokogiri = 1.6.3.1
 INFO global:   - fog = 1.22.1
 INFO global:   - json = 1.8.2
 INFO global:   - rdoc = 4.2.0
 INFO global:   - rest-client = 1.6.8
 INFO global:   - vagrant-cloudstack = 0.10.0
 INFO global:   - vagrant-share = 1.1.3
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/communicators/winrm/plugin.rb
 INFO manager: Registered plugin: winrm communicator
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/communicators/ssh/plugin.rb
 INFO manager: Registered plugin: ssh communicator
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/docker/plugin.rb
 INFO manager: Registered plugin: docker
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/ansible/plugin.rb
 INFO manager: Registered plugin: ansible
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/file/plugin.rb
 INFO manager: Registered plugin: file
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/chef/plugin.rb
 INFO manager: Registered plugin: chef
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/salt/plugin.rb
 INFO manager: Registered plugin: salt
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/puppet/plugin.rb
 INFO manager: Registered plugin: puppet
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/cfengine/plugin.rb
 INFO manager: Registered plugin: CFEngine Provisioner
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/provisioners/shell/plugin.rb
 INFO manager: Registered plugin: shell
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/kernel_v2/plugin.rb
 INFO manager: Registered plugin: kernel
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/global-status/plugin.rb
 INFO manager: Registered plugin: global-status command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/reload/plugin.rb
 INFO manager: Registered plugin: reload command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/up/plugin.rb
 INFO manager: Registered plugin: up command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/login/plugin.rb
 INFO manager: Registered plugin: vagrant-login
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/ssh_config/plugin.rb
 INFO manager: Registered plugin: ssh-config command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/box/plugin.rb
 INFO manager: Registered plugin: box command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/help/plugin.rb
 INFO manager: Registered plugin: help command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/version/plugin.rb
 INFO manager: Registered plugin: version command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/resume/plugin.rb
 INFO manager: Registered plugin: resume command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/package/plugin.rb
 INFO manager: Registered plugin: package command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/init/plugin.rb
 INFO manager: Registered plugin: init command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/push/plugin.rb
 INFO manager: Registered plugin: push command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/list-commands/plugin.rb
 INFO manager: Registered plugin: list-commands command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/destroy/plugin.rb
 INFO manager: Registered plugin: destroy command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/halt/plugin.rb
 INFO manager: Registered plugin: halt command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/rdp/plugin.rb
 INFO manager: Registered plugin: rdp command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/provision/plugin.rb
 INFO manager: Registered plugin: provision command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/status/plugin.rb
 INFO manager: Registered plugin: status command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/ssh/plugin.rb
 INFO manager: Registered plugin: ssh command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/plugin/plugin.rb
 INFO manager: Registered plugin: plugin command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/commands/suspend/plugin.rb
 INFO manager: Registered plugin: suspend command
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/pushes/local-exec/plugin.rb
 INFO manager: Registered plugin: local-exec
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/pushes/heroku/plugin.rb
 INFO manager: Registered plugin: heroku
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/pushes/ftp/plugin.rb
 INFO manager: Registered plugin: ftp
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/pushes/atlas/plugin.rb
 INFO manager: Registered plugin: atlas
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/pushes/noop/plugin.rb
 INFO manager: Registered plugin: noop
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/plugin.rb
 INFO manager: Registered plugin: VirtualBox provider
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/docker/plugin.rb
 INFO manager: Registered plugin: docker-provider
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/hyperv/plugin.rb
 INFO manager: Registered plugin: Hyper-V provider
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/arch/plugin.rb
 INFO manager: Registered plugin: Arch guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/fedora/plugin.rb
 INFO manager: Registered plugin: Fedora guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/tinycore/plugin.rb
 INFO manager: Registered plugin: TinyCore Linux guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/freebsd/plugin.rb
 INFO manager: Registered plugin: FreeBSD guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/openbsd/plugin.rb
 INFO manager: Registered plugin: OpenBSD guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/debian/plugin.rb
 INFO manager: Registered plugin: Debian guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/solaris/plugin.rb
 INFO manager: Registered plugin: Solaris guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/omnios/plugin.rb
 INFO manager: Registered plugin: OmniOS guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/solaris11/plugin.rb
 INFO manager: Registered plugin: Solaris 11 guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/smartos/plugin.rb
 INFO manager: Registered plugin: SmartOS guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/linux/plugin.rb
 INFO manager: Registered plugin: Linux guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/darwin/plugin.rb
 INFO manager: Registered plugin: Darwin guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/coreos/plugin.rb
 INFO manager: Registered plugin: CoreOS guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/nixos/plugin.rb
 INFO manager: Registered plugin: NixOS guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/mint/plugin.rb
 INFO manager: Registered plugin: Mint guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/suse/plugin.rb
 INFO manager: Registered plugin: SUSE guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/windows/plugin.rb
 INFO manager: Registered plugin: Windows guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/redhat/plugin.rb
 INFO manager: Registered plugin: RedHat guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/esxi/plugin.rb
 INFO manager: Registered plugin: ESXi guest.
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/gentoo/plugin.rb
 INFO manager: Registered plugin: Gentoo guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/ubuntu/plugin.rb
 INFO manager: Registered plugin: Ubuntu guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/pld/plugin.rb
 INFO manager: Registered plugin: PLD Linux guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/netbsd/plugin.rb
 INFO manager: Registered plugin: NetBSD guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/guests/funtoo/plugin.rb
 INFO manager: Registered plugin: Funtoo guest
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/arch/plugin.rb
 INFO manager: Registered plugin: Arch host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/null/plugin.rb
 INFO manager: Registered plugin: null host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/freebsd/plugin.rb
 INFO manager: Registered plugin: FreeBSD host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/bsd/plugin.rb
 INFO manager: Registered plugin: BSD host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/linux/plugin.rb
 INFO manager: Registered plugin: Linux host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/darwin/plugin.rb
 INFO manager: Registered plugin: Mac OS X host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/suse/plugin.rb
 INFO manager: Registered plugin: SUSE host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/windows/plugin.rb
 INFO manager: Registered plugin: Windows host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/redhat/plugin.rb
 INFO manager: Registered plugin: Red Hat host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/slackware/plugin.rb
 INFO manager: Registered plugin: Slackware host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/hosts/gentoo/plugin.rb
 INFO manager: Registered plugin: Gentoo host
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/kernel_v1/plugin.rb
 INFO manager: Registered plugin: kernel
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/synced_folders/smb/plugin.rb
 INFO manager: Registered plugin: SMB synced folders
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/synced_folders/rsync/plugin.rb
 INFO manager: Registered plugin: RSync synced folders
DEBUG global: Loading core plugin: /opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/synced_folders/nfs/plugin.rb
 INFO manager: Registered plugin: NFS synced folders
 INFO global: Loading plugins!
 INFO manager: Registered plugin: vagrant-share
 INFO manager: Registered plugin: Cloudstack
 INFO vagrant: `vagrant` invoked: ["up", "--debug"]
DEBUG vagrant: Creating Vagrant environment
 INFO environment: Environment initialized (#<Vagrant::Environment:0x000000028c6188>)
 INFO environment:   - cwd: /home/ezis/.vagrant.d/boxes/dummy/0/cloudstack
 INFO environment: Home path: /home/ezis/.vagrant.d
 INFO environment: Local data path: /home/ezis/.vagrant.d/boxes/dummy/0/cloudstack/.vagrant
DEBUG environment: Creating: /home/ezis/.vagrant.d/boxes/dummy/0/cloudstack/.vagrant
 INFO environment: Running hook: environment_plugins_loaded
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x00000001ae1360>
 INFO environment: Running hook: environment_load
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x0000000269b228>
 INFO cli: CLI: [] "up" []
DEBUG cli: Invoking command class: VagrantPlugins::CommandUp::Command []
DEBUG command: 'Up' each target VM...
 INFO loader: Set :root = #<Pathname:/home/ezis/.vagrant.d/boxes/dummy/0/cloudstack/Vagrantfile>
DEBUG loader: Populating proc cache for #<Pathname:/home/ezis/.vagrant.d/boxes/dummy/0/cloudstack/Vagrantfile>
DEBUG loader: Load procs for pathname: /home/ezis/.vagrant.d/boxes/dummy/0/cloudstack/Vagrantfile
 INFO loader: Loading configuration in order: [:home, :root]
DEBUG loader: Loading from: root (evaluating)
DEBUG loader: Configuration loaded successfully, finalizing and returning
DEBUG push: finalizing
DEBUG command: Getting target VMs for command. Arguments:
DEBUG command:  -- names: ["default"]
DEBUG command:  -- options: {:provider=>nil}
DEBUG command: Finding machine that match name: default
 INFO loader: Set "21279700_machine_default" = []
 INFO loader: Loading configuration in order: [:home, :root, "21279700_machine_default"]
DEBUG loader: Loading from: root (cache)
DEBUG loader: Configuration loaded successfully, finalizing and returning
DEBUG push: finalizing
 INFO base: VBoxManage path: VBoxManage
 INFO environment: Getting machine: default (cloudstack)
 INFO environment: Uncached load of machine.
 INFO loader: Set "21279700_machine_default" = []
 INFO loader: Loading configuration in order: [:home, :root, "21279700_machine_default"]
DEBUG loader: Loading from: root (cache)
DEBUG loader: Configuration loaded successfully, finalizing and returning
DEBUG push: finalizing
 INFO box_collection: Box found: dummy (cloudstack)
 INFO loader: Set :"21303600_dummy_cloudstack" = #<Pathname:/home/ezis/.vagrant.d/boxes/dummy/0/cloudstack/Vagrantfile>
 INFO loader: Loading configuration in order: [:"21303600_dummy_cloudstack", :home, :root, "21279700_machine_default"]
DEBUG loader: Loading from: 21303600_dummy_cloudstack (cache)
DEBUG loader: Loading from: root (cache)
DEBUG loader: Configuration loaded successfully, finalizing and returning
DEBUG push: finalizing
 INFO loader: Set :"21279700_vm_default_dummy_cloudstack" = [["2", #<Proc:0x000000028eacb8>], ["2", #<Proc:0x000000028eacb8>]]
DEBUG loader: Populating proc cache for ["2", #<Proc:0x000000028eacb8>]
 INFO loader: Loading configuration in order: [:"21303600_dummy_cloudstack", :home, :root, "21279700_machine_default", :"21279700_vm_default_dummy_cloudstack"]
DEBUG loader: Loading from: 21303600_dummy_cloudstack (cache)
DEBUG loader: Loading from: root (cache)
DEBUG loader: Loading from: 21279700_vm_default_dummy_cloudstack (evaluating)
DEBUG loader: Loading from: 21279700_vm_default_dummy_cloudstack (cache)
DEBUG loader: Configuration loaded successfully, finalizing and returning
DEBUG push: finalizing
 INFO machine: Initializing machine: default
 INFO machine:   - Provider: VagrantPlugins::Cloudstack::Provider
 INFO machine:   - Box: #<Vagrant::Box:0x0000000294e6f0>
 INFO machine:   - Data dir: /home/ezis/.vagrant.d/boxes/dummy/0/cloudstack/.vagrant/machines/default/cloudstack
 INFO machine: Calling action: read_state on provider Cloudstack (new)
DEBUG environment: Attempting to acquire process-lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
DEBUG environment: Attempting to acquire process-lock: dotlock
 INFO environment: Acquired process lock: dotlock
 INFO environment: Released process lock: dotlock
 INFO environment: Acquired process lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
 INFO host: Autodetecting host type for [#<Vagrant::Environment: /home/ezis/.vagrant.d/boxes/dummy/0/cloudstack>]
DEBUG host: Trying: arch
DEBUG host: Trying: freebsd
DEBUG host: Trying: darwin
DEBUG host: Trying: suse
DEBUG host: Trying: redhat
DEBUG host: Trying: slackware
DEBUG host: Trying: gentoo
DEBUG host: Trying: null
DEBUG host: Trying: bsd
DEBUG host: Trying: linux
 INFO host: Detected: linux!
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x000000028816a0>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::ConfigValidate:0x000000028daef8>
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x000000028daed0>
 INFO connect_cloudstack: Connecting to Cloudstack...
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ReadState:0x000000029333f0>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ReadState:0x000000029333f0>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x000000028daed0>
 INFO warden: Calling OUT action: #<Vagrant::Action::Builtin::ConfigValidate:0x000000028daef8>
 INFO environment: Released process lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
DEBUG environment: Attempting to acquire process-lock: dotlock
 INFO environment: Acquired process lock: dotlock
 INFO environment: Released process lock: dotlock
 INFO machine: New machine ID: nil
 INFO command: With machine: default (#<VagrantPlugins::Cloudstack::Provider:0x000000028a4358 @machine=#<Vagrant::Machine: default (VagrantPlugins::Cloudstack::Provider)>, @cap_logger=#<Log4r::Logger:0x000000028aba18 @fullname="vagrant::capability_host::vagrantplugins::cloudstack::provider", @outputters=[], @additive=true, @name="provider", @path="vagrant::capability_host::vagrantplugins::cloudstack", @parent=#<Log4r::Logger:0x00000001c85630 @fullname="vagrant", @outputters=[#<Log4r::StderrOutputter:0x00000001cf2050 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x00000001cf1fb0>, @name="stderr", @level=0, @formatter=#<Log4r::DefaultFormatter:0x00000001d07950 @depth=7>, @out=#<IO:<STDERR>>>], @additive=true, @name="vagrant", @path="", @parent=#<Log4r::RootLogger:0x00000001c854f0 @level=0, @outputters=[]>, @level=1, @trace=false>, @level=1, @trace=false>, @cap_host_chain=[[:cloudstack, #<#<Class:0x000000028a4330>:0x000000028c9860>]], @cap_args=[#<Vagrant::Machine: default (VagrantPlugins::Cloudstack::Provider)>], @cap_caps={:virtualbox=>#<Vagrant::Registry:0x000000028a41c8 @items={:forwarded_ports=>#<Proc:0x00000001c53888@/opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/plugin.rb:27>, :nic_mac_addresses=>#<Proc:0x00000001c537c0@/opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/plugin.rb:32>, :public_address=>#<Proc:0x000000026c8a98@/opt/vagrant/embedded/gems/gems/vagrant-share-1.1.3/lib/vagrant-share.rb:39>}, @results_cache={}>, :docker=>#<Vagrant::Registry:0x000000028a40b0 @items={:public_address=>#<Proc:0x00000001c88bf0@/opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/docker/plugin.rb:54>, :proxy_machine=>#<Proc:0x00000001c88a38@/opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/docker/plugin.rb:59>}, @results_cache={}>, :hyperv=>#<Vagrant::Registry:0x000000028a9e20 @items={:public_address=>#<Proc:0x00000002926f10@/opt/vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/hyperv/plugin.rb:25>}, @results_cache={}>}>)
 INFO interface: info: Bringing machine 'default' up with 'cloudstack' provider...
Bringing machine 'default' up with 'cloudstack' provider...
 INFO machine: Calling action: read_state on provider Cloudstack (new)
DEBUG environment: Attempting to acquire process-lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
DEBUG environment: Attempting to acquire process-lock: dotlock
 INFO environment: Acquired process lock: dotlock
 INFO environment: Released process lock: dotlock
 INFO environment: Acquired process lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x000000034b5548>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::ConfigValidate:0x000000034ba0e8>
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x000000034ba0c0>
 INFO connect_cloudstack: Connecting to Cloudstack...
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ReadState:0x000000034d6ec8>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ReadState:0x000000034d6ec8>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x000000034ba0c0>
 INFO warden: Calling OUT action: #<Vagrant::Action::Builtin::ConfigValidate:0x000000034ba0e8>
 INFO environment: Released process lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
DEBUG environment: Attempting to acquire process-lock: dotlock
 INFO environment: Acquired process lock: dotlock
 INFO environment: Released process lock: dotlock
 INFO batch_action: Enabling parallelization by default.
 INFO batch_action: Disabling parallelization because only executing one action
 INFO batch_action: Batch action will parallelize: false
 INFO batch_action: Starting action: #<Vagrant::Machine:0x0000000285dea8> up {:destroy_on_error=>true, :parallel=>true, :provision_ignore_sentinel=>false, :provision_types=>nil}
 INFO machine: Calling action: up on provider Cloudstack (new)
DEBUG environment: Attempting to acquire process-lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
DEBUG environment: Attempting to acquire process-lock: dotlock
 INFO environment: Acquired process lock: dotlock
 INFO environment: Released process lock: dotlock
 INFO environment: Acquired process lock: machine-action-98fcb3f1a0ea3a6c65e59e2bbbbdadcf
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x0000000277ea78>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::ConfigValidate:0x000000028a0ff0>
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x000000028a0fa0>
 INFO connect_cloudstack: Connecting to Cloudstack...
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::Call:0x0000000290f5b8>
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x00000003225058>
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::IsCreated:0x0000000323dea0>
 INFO machine: Calling action: read_state on provider Cloudstack (new)
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x000000032e9d90>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::ConfigValidate:0x000000032fd3b8>
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x000000032fd520>
 INFO connect_cloudstack: Connecting to Cloudstack...
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ReadState:0x000000033432f0>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ReadState:0x000000033432f0>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x000000032fd520>
 INFO warden: Calling OUT action: #<Vagrant::Action::Builtin::ConfigValidate:0x000000032fd3b8>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::IsCreated:0x0000000323dea0>
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Warden:0x0000000344d510>
 INFO warden: Calling IN action: #<Proc:0x000000034dc288@/opt/vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:94 (lambda)>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::Provision:0x0000000344d498>
 INFO provision: Checking provisioner sentinel file...
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::SyncFolders:0x0000000347b848>
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::WarnNetworks:0x0000000349ee88>
 INFO interface: warn: Warning! The Cloudstack provider doesn't support any of the Vagrant
high-level network configurations (`config.vm.network`). They
will be silently ignored.
 INFO interface: warn: ==> default: Warning! The Cloudstack provider doesn't support any of the Vagrant
==> default: high-level network configurations (`config.vm.network`). They
==> default: will be silently ignored.
==> default: Warning! The Cloudstack provider doesn't support any of the Vagrant
==> default: high-level network configurations (`config.vm.network`). They
==> default: will be silently ignored.
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::RunInstance:0x0000000349ee38>
 INFO interface: info: Fetching UUID for network named 'test'
 INFO interface: info: ==> default: Fetching UUID for network named 'test'
==> default: Fetching UUID for network named 'test'
 INFO interface: info: Fetching UUID for zone named ' Cloud-1'
 INFO interface: info: ==> default: Fetching UUID for zone named ' Cloud-1'
==> default: Fetching UUID for zone named ' Cloud-1'
 INFO interface: info: Fetching UUID for service_offering named ' Cloud Server 1 vCPU, 1 GB RAM'
 INFO interface: info: ==> default: Fetching UUID for service_offering named 'Cloud Server 1 vCPU, 1 GB RAM'
==> default: Fetching UUID for service_offering named  'Cloud Server 1 vCPU, 1 GB RAM'
 INFO interface: info: Fetching UUID for template named 'vagrant'
 INFO interface: info: ==> default: Fetching UUID for template named 'vagrant'
==> default: Fetching UUID for template named 'vagrant'
 INFO interface: warn: Warning! You didn't specify a keypair to launch your instance with.
This can sometimes result in not being able to access your instance.
 INFO interface: warn: ==> default: Warning! You didn't specify a keypair to launch your instance with.
==> default: This can sometimes result in not being able to access your instance.
==> default: Warning! You didn't specify a keypair to launch your instance with.
==> default: This can sometimes result in not being able to access your instance.
 INFO interface: info: Launching an instance with the following settings...
 INFO interface: info: ==> default: Launching an instance with the following settings...
==> default: Launching an instance with the following settings...
 INFO interface: info:  -- Display Name: ezis_cloudstack_1434355342
 INFO interface: info: ==> default:  -- Display Name: ezis_cloudstack_1434355342
==> default:  -- Display Name: ezis_cloudstack_1434355342
 INFO interface: info:  -- Service offering:  Cloud Server 1 vCPU, 1 GB RAM (245f7b49-2131-4b6a-b644-7324651f7912)
 INFO interface: info: ==> default:  -- Service offering:  Cloud Server 1 vCPU, 1 GB RAM (245f7b49-2131-4b6a-b644-7324651f7912)
==> default:  -- Service offering:  Cloud Server 1 vCPU, 1 GB RAM (245f7b49-2131-4b6a-b644-7324651f7912)
 INFO interface: info:  -- Template: vagrant (1495e9f6-8f03-434c-9636-8ce638d77a8b)
 INFO interface: info: ==> default:  -- Template: vagrant (1495e9f6-8f03-434c-9636-8ce638d77a8b)
==> default:  -- Template: vagrant (1495e9f6-8f03-434c-9636-8ce638d77a8b)
 INFO interface: info:  -- Zone:  Cloud-1 (c8d0e647-c8bb-4489-bc73-39b6dbb307a7)
 INFO interface: info: ==> default:  -- Zone:  Cloud-1 (c8d0e647-c8bb-4489-bc73-39b6dbb307a7)
==> default:  -- Zone:  Cloud-1 (c8d0e647-c8bb-4489-bc73-39b6dbb307a7)
 INFO interface: info:  -- Network: test (0d4a7a4f-040e-4102-9866-e2c985630743)
 INFO interface: info: ==> default:  -- Network: test (0d4a7a4f-040e-4102-9866-e2c985630743)
==> default:  -- Network: test (0d4a7a4f-040e-4102-9866-e2c985630743)
 INFO machine: New machine ID: "a4ddb2d9-9c2d-410a-9e35-c67259240a8b"
 INFO interface: info: Waiting for instance to become "ready"...
 INFO interface: info: ==> default: Waiting for instance to become "ready"...
==> default: Waiting for instance to become "ready"...
 INFO retryable: Retryable exception raised: #<Fog::Errors::TimeoutError: The specified wait_for timeout (2 seconds) was exceeded>
 INFO retryable: Retryable exception raised: #<Fog::Errors::TimeoutError: The specified wait_for timeout (2 seconds) was exceeded>
 INFO retryable: Retryable exception raised: #<Fog::Errors::TimeoutError: The specified wait_for timeout (2 seconds) was exceeded>
 INFO retryable: Retryable exception raised: #<Fog::Errors::TimeoutError: The specified wait_for timeout (2 seconds) was exceeded>
 INFO retryable: Retryable exception raised: #<Fog::Errors::TimeoutError: The specified wait_for timeout (2 seconds) was exceeded>
 INFO run_instance: Time to instance ready: 13.685054063796997
 INFO interface: info: Waiting for SSH to become available...
 INFO interface: info: ==> default: Waiting for SSH to become available...
==> default: Waiting for SSH to become available...
DEBUG ssh: Checking whether SSH is ready...
 INFO machine: Calling action: read_ssh_info on provider Cloudstack (a4ddb2d9-9c2d-410a-9e35-c67259240a8b)
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 1 hooks defined.
 INFO runner: Running action: #<Vagrant::Action::Builder:0x007faf50347310>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::ConfigValidate:0x007faf50353818>
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x007faf503537f0>
 INFO connect_cloudstack: Connecting to Cloudstack...
 INFO warden: Calling IN action: #<VagrantPlugins::Cloudstack::Action::ReadSSHInfo:0x007faf503a5988>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ReadSSHInfo:0x007faf503a5988>
 INFO warden: Calling OUT action: #<VagrantPlugins::Cloudstack::Action::ConnectCloudstack:0x007faf503537f0>
 INFO warden: Calling OUT action: #<Vagrant::Action::Builtin::ConfigValidate:0x007faf50353818>
DEBUG ssh: Checking key permissions: /home/ezis/.vagrant.d/vagrant.key
 INFO ssh: Attempting SSH connection...
 INFO ssh: Attempting to connect to SSH...
 INFO ssh:   - Host: 10.1.1.199
 INFO ssh:   - Port: 22
 INFO ssh:   - Username: vagrant
 INFO ssh:   - Password? false
 INFO ssh:   - Key Path: ["/home/ezis/.vagrant.d/vagrant.key"]
DEBUG ssh: == Net-SSH connection debug-level log START ==
DEBUG ssh: D, [2015-06-15T11:02:37.132332 #6309] DEBUG -- net.ssh.transport.session[3fd7a828a018]: establishing connection to 10.1.1.199:22

DEBUG ssh: == Net-SSH connection debug-level log END ==
 INFO retryable: Retryable exception raised: #<Timeout::Error: execution expired>
 INFO ssh: Attempting to connect to SSH...
 INFO ssh:   - Host: 10.1.1.199
 INFO ssh:   - Port: 22
 INFO ssh:   - Username: vagrant
 INFO ssh:   - Password? false
 INFO ssh:   - Key Path: ["/home/ezis/.vagrant.d/vagrant.key"]
DEBUG ssh: == Net-SSH connection debug-level log START ==
DEBUG ssh: D, [2015-06-15T11:02:52.139659 #6309] DEBUG -- net.ssh.transport.session[3fd7a82b5920]: establishing connection to 10.1.1.199:22

And it continues to try to connect to a local IP but I cancel it with Ctrl + C

@miguelaferreira
Copy link
Contributor

The last example I sent you was using a notation for expressing hashes that the plugin does not seem to recognise.

Can you try to change you config to be like this:

cloudstack.firewall_rules = [
{
:ipaddress => "A.A.A.A",
:cidrlist =>  "B.B.B.B/32",
:protocol =>  'tcp',
:startport => 22,
:endport =>  22
}
]

@ezisezis
Copy link
Author

At last I managed to do it with port forwarding. I had to update the cloudstack plugin that i hadn't done (oops) and change the network service offering to the one with port forwarding enabled. Thank You for the help. One more question - is it possible to configure vagrant to add another IP with static NAT and withOUT port forwarding?

@miguelaferreira
Copy link
Contributor

It is possible to enable static NAT on an existing IP, but like before you will have to acquire the IP yourself.
You can enable it like this:

cloudstack.static_nat = [
   { :ipaddress => "A.A.A.A"}
]

@bheuvel
Copy link
Contributor

bheuvel commented Mar 22, 2017

Seeing the age of this thread and different questions and solution, I'm closing this.
But do feel free to create a new one if needed!

@bheuvel bheuvel closed this as completed Mar 22, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants