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

[WIP] Improve networking options for libvirtd target #922

Closed
wants to merge 12 commits into from

Commits on Apr 9, 2018

  1. Configuration menu
    Copy the full SHA
    55916cd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ece0040 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    84a7aa7 View commit details
    Browse the repository at this point in the history
  4. libvirtd: remove unused imports

    flokli authored and erosennin committed Apr 9, 2018
    Configuration menu
    Copy the full SHA
    7145c22 View commit details
    Browse the repository at this point in the history
  5. backends.libvirtd: use machine name for temp_image_path

    Otherwise, deployments with multiple VMs try to write to the same image.
    
    Also, do the temp_image_path calculation only once.
    flokli authored and erosennin committed Apr 9, 2018
    Configuration menu
    Copy the full SHA
    7940d93 View commit details
    Browse the repository at this point in the history
  6. Update documentation

    erosennin committed Apr 9, 2018
    Configuration menu
    Copy the full SHA
    36f426d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    aa69640 View commit details
    Browse the repository at this point in the history

Commits on Apr 13, 2018

  1. Eliminate duplicate SSH flags

    `MachineState.run_command()` passes SSH flags to `self.ssh.run_command()`.
    However, `self.get_ssh_flags()` is already registered as a `ssh_flag_fun` in the
    class `__init__()` function, so `ssh_util.SSH` already uses it to get the flags
    when initiating a connection. This lead to the SSH flags being duplicated, which
    causes an error for some flags (e.g. the `-J` flag, which can only be specified once).
    mbrgm committed Apr 13, 2018
    Configuration menu
    Copy the full SHA
    574ba39 View commit details
    Browse the repository at this point in the history
  2. libvirtd: move files to separate directory

    Offers better separation, especially when additional features will be added.
    mbrgm committed Apr 13, 2018
    Configuration menu
    Copy the full SHA
    deafeb4 View commit details
    Browse the repository at this point in the history
  3. libvirtd: connect to guest using the hypervisor as a jumphost

    This helps in situations when there's no network connectivity to the guest, e.g.
    when the hypervisor host can be reached via a VPN, but the guest host cannot.
    mbrgm committed Apr 13, 2018
    Configuration menu
    Copy the full SHA
    d193ef8 View commit details
    Browse the repository at this point in the history
  4. libvirtd: add qemu-guest profile to the initial image

    This mainly adds driver support for virtio drivers to the initial image of the
    guest provisioning.
    mbrgm committed Apr 13, 2018
    Configuration menu
    Copy the full SHA
    c6c4351 View commit details
    Browse the repository at this point in the history
  5. libvirtd: add bridged networking to qemu guests

    This is a WIP!
    
    - Replaced `deployment.libvirtd.networks` option with a submodule to allow not
      only (libvirt) network names, but other networking types as well.
    - Domain XML was adjusted accordingly to incorporate the parameters from the new
      `networks` submodule.
    - Added the qemu guest agent to guests to allow for out-of-band
      communication (no need for network connectivity) with the hypervisor.
    - Guest IP (for provisioning after guest has started) is no longer determined by
      waiting for the guest to get a DHCP lease in the hypervisor libvirt network.
      If the guest has a static IP, it won't ask for a DHCP lease. Also, for bridged
      networking, we probably will not have access to the DHCP server.
    - Instead, the address of the first interface is retrieved from libvirt using
      the `VIR_DOMAIN_INTERFACE_ADDRESSES_SRC_AGENT` method, which can now be done
      because of the newly added qemu guest agent.
    mbrgm committed Apr 13, 2018
    Configuration menu
    Copy the full SHA
    6a6d9e3 View commit details
    Browse the repository at this point in the history