1. 18 Mar, 2015 1 commit
  2. 11 Mar, 2015 2 commits
    • Dimitris Aragiorgis's avatar
      Move common code out of DrbdAttachNet · cc1e9789
      Dimitris Aragiorgis authored
      DrbdAttachNet is used only by the _GoReconnect() helper during
      migration. Up until now, in case of multimaster it created the
      symlinks needed by the hypervisor and opened the devices so that
      they could be ready for I/O.
      
      With the introduction of _OpenInstanceDisks() we can now unify the
      code and let DrbdAttachNet do only DRBD-specific actions.
      
      Now DTS_INT_MIRROR only differs from DTS_EXT_MIRROR in the
      following steps during migration:
      
       _GoStandAlone()
       _GoReconnect()
       _WaitUntilSync()
      
      which are all DRBD-specific.
      Signed-off-by: default avatarDimitris Aragiorgis <dimitris.aragiorgis@gmail.com>
      Reviewed-by: default avatarHrvoje Ribicic <riba@google.com>
      cc1e9789
    • Dimitris Aragiorgis's avatar
      Introduce blockdev_open RPC · a66c47fa
      Dimitris Aragiorgis authored
      Until now there was a blockdev_close RPC that was used exclusively
      by DRBD code.
      
      This patch adds the blockdev_open RPC which will allow for
      further unification of DRBD and other templates code.
      
      The RPC takes the disks of an instance and whether they should be
      exclusively opened or not. Besides opening the block device in the
      backend it creates the symlinks of the disks that the hypervisor
      requires.
      Signed-off-by: default avatarDimitris Aragiorgis <dimitris.aragiorgis@gmail.com>
      Reviewed-by: default avatarHrvoje Ribicic <riba@google.com>
      a66c47fa
  3. 07 Jan, 2015 1 commit
  4. 22 Oct, 2014 3 commits
  5. 02 Oct, 2014 3 commits
    • Helga Velroyen's avatar
      Renew SSH keys and upgrade · 02719348
      Helga Velroyen authored
      This patch adds the '--new-ssh-keys' option
      to 'gnt-cluster renew-crypto'. In the client, it retrieves
      all current ssh keys and (re-)writes the 'ganeti_pub_key'
      file with it, then in the backend, the new keys are
      generated and distributed.
      Signed-off-by: default avatarHelga Velroyen <helgav@google.com>
      Reviewed-by: default avatarPetr Pudlak <pudlak@google.com>
      02719348
    • Helga Velroyen's avatar
      Handling SSH keys on node removal · c7017bae
      Helga Velroyen authored
      This patch implements the handling of SSH keys when a node
      is removed from the cluster. It covers the implementation
      in the backend, the introduction and calling of a new RPC
      call for that purpose.
      Signed-off-by: default avatarHelga Velroyen <helgav@google.com>
      Reviewed-by: default avatarPetr Pudlak <pudlak@google.com>
      c7017bae
    • Helga Velroyen's avatar
      Key handling when adding a node · 49493f33
      Helga Velroyen authored
      This patch implements the handling of SSH keys, when a new
      node is added. It introduces the new RPC call 'ssh_add_key',
      which is called to the master's noded when a new node is
      added. In the backend implementation, noded takes care of
      distributing the new node's SSH key information to all
      other nodes in the cluster which are supposed to have
      this information.
      
      Note: It was rather tedious to test the backend function,
      because it was calling many other functions which would
      have needed to be mocked. Instead I added the public key
      file as a parameter, because this way I could at least
      reduce the complexity of the test setup and at the same
      time have direct access to the file that gets manipulated.
      
      Also Note: Up till now, there is still only the common
      cluster SSH key around. I wanted to have some
      infrastructure in place, before actually individual keys
      are generated.
      Signed-off-by: default avatarHelga Velroyen <helgav@google.com>
      Reviewed-by: default avatarPetr Pudlak <pudlak@google.com>
      49493f33
  6. 12 Sep, 2014 1 commit
  7. 25 Jul, 2014 1 commit
  8. 12 Jun, 2014 1 commit
    • Dimitris Aragiorgis's avatar
      Support disk hotplug with userspace access · 6b31e28f
      Dimitris Aragiorgis authored
      Before any hotplug action we assemble the block device. Currently
      call_blockdev_assemble() returns the link_name as calculated by
      _SymlinkBlockDev().
      
      With userspace support we have to return the drive_uri as calculated
      by _CalculateDeviceURI() as well, in order for the drive_add monitor
      command to be able to use it.
      
      Additionally with this patch the runtime files are properly updated
      to include the drive uri as well, and thus, upon instance migration,
      the target process will be started with the correct drive options.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarKlaus Aehlig <aehlig@google.com>
      6b31e28f
  9. 10 Jun, 2014 1 commit
  10. 06 Jun, 2014 1 commit
  11. 02 Jun, 2014 1 commit
  12. 14 May, 2014 1 commit
  13. 08 Apr, 2014 1 commit
  14. 02 Apr, 2014 1 commit
  15. 17 Mar, 2014 2 commits
  16. 11 Mar, 2014 1 commit
  17. 07 Mar, 2014 1 commit
  18. 07 Feb, 2014 1 commit
  19. 15 Jan, 2014 1 commit
    • Jose A. Lopes's avatar
      Simplify 'GetMasterInfo' RPC · cb8028f3
      Jose A. Lopes authored
      RPC 'GetMasterInfo' returns several fields, namely, 'master_netdev',
      'master_ip', 'master_netmask', 'master_node', and 'primary_ip_family',
      of which only the 'master_node' is actually used.
      
      In this patch:
      * remove all the other fields and keep only the 'master_node' field.
      * rename RPCs, helper functions (e.g., 'master_info' to 'master_node_name')
      * simplify the the voting algorithm code
      Signed-off-by: default avatarJose A. Lopes <jabolopes@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      cb8028f3
  20. 20 Dec, 2013 2 commits
  21. 18 Dec, 2013 2 commits
  22. 29 Nov, 2013 1 commit
  23. 14 Nov, 2013 1 commit
  24. 31 Oct, 2013 1 commit
  25. 29 Oct, 2013 1 commit
  26. 24 Oct, 2013 1 commit
    • Dimitris Aragiorgis's avatar
      Hotplug: rpc support · c5708931
      Dimitris Aragiorgis authored
      Introduce new RPC that eventually invoke hypervisor specific
      hotplug functions. In order to be generic it has the following
      arguments: device type, action, device, extra info, seq.
      Device type can be NIC or DISK, action can be ADD, REMOVE,
      device is the NIC or Disk object, extra info is used by Disk
      hotplug to point the device path and seq is the device index
      (from the master perspective)
      
      Add HotplugSupported() in all Hypervisors
      
      Only KVM hypervisor supports this method. The other hypervisors
      raise HypervisorError.
      
      Before trying hotplug in backend layer invoke hyper.HotplugSupported
      and abort RPC in case it is not implemented or for some other reason
      not supported (disk+chroot, nic without fdsend, etc).
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarThomas Thrainer <thomasth@google.com>
      c5708931
  27. 27 Sep, 2013 2 commits
  28. 24 Sep, 2013 1 commit
    • Thomas Thrainer's avatar
      Replace physical_id with dynamic_params · 0c3d9c7c
      Thomas Thrainer authored
      The disk field 'physical_id' has to be kept up to date whenever a disk
      object is sent to a node via RPC. This is done with the SetDiskID method
      manually, which is a source of bugs.
      
      This patch replaces the use of 'physical_id' with a new field names
      'dynamic_params'. The RPC code is adapted to update this field whenever
      a disk object is sent to a node. Furthermore, this field is only ever
      set on copies of disk objects which don't get written to the
      configuration file. On the node side, the use of 'physical_id' is
      removed and the new dynamic parameters are used now for the same
      purpose.
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarJose A. Lopes <jabolopes@google.com>
      0c3d9c7c
  29. 21 Aug, 2013 1 commit
  30. 02 Jul, 2013 2 commits