1. 21 May, 2013 1 commit
    • Christos Stavrakakis's avatar
      cyclades: Sypport backends with Xen hypervisor · 8bcc0f5f
      Christos Stavrakakis authored
      Support Ganeti backends with Xen hypervisor:
      * Extend 'Backend' model with the 'hypervisor' attribute, which
        currently can be 'kvm' or 'xen'. Use 'kvm' as default value to
        easy database migration. Also add the corresponding schema migration.
      * Do not use hotplug at Xen backends, since it is not
      * Support different 'hvparams' for Xen and KVM backends. Update
        GANETI_CREATEINSTNACE_KWARGS setting to hold 'hvparams' for both
        Xen and KVM.
      * When getting instance console, check 'serial_console' hvparam only
        for Xen instances.
      Refs #3772
  2. 30 Apr, 2013 1 commit
    • Christos Stavrakakis's avatar
      Refactor QuotaHolder serial model · 9b602630
      Christos Stavrakakis authored
      * Merge 'accepted' and 'rejected' field to 'accept' field.
      * Add 'resolved' field, indicating whether this commission has been
        accepted/rejected to Quotaholder
      * Remove custom save() method. Handle 'pending' field manually.
      Also add the corresponding database migrations.
  3. 22 Mar, 2013 1 commit
  4. 21 Mar, 2013 1 commit
    • Christos Stavrakakis's avatar
      Create public NIC when creating VM · dc1554e4
      Christos Stavrakakis authored
      Until now, a server's public NetworkInterface was not created in the DB
      until the arrival of the message from Ganeti hooks. However, the IPv4
      address of the NIC is reserved before sending the OP_INSTANCE_CREATE
      job to Ganeti.
      This drawback of this approach is that if the Ganeti hooks never run
      (building ERROR), Cyclades will never associate the IPv4 address with
      a machine and therefore this address will never be released.
      This commit fixes this issue by creating the VM's public NIC in DB when
      creating the server. Also the NetworkInterface model is extended with
      a 'state' field to indicate if the NIC is active or still building.
      Finally, the corresponding API calls are modified in order to return
      only 'ACTIVE' NICs.
  5. 04 Dec, 2012 1 commit
  6. 26 Nov, 2012 1 commit
  7. 23 Oct, 2012 1 commit
  8. 08 Aug, 2012 1 commit
  9. 27 Jul, 2012 1 commit
    • Christos Stavrakakis's avatar
      Fix migration files · c64ee93e
      Christos Stavrakakis authored
      Fix south migration files. In data migrations, access the Models from
      the orm, instead importing Models from synnefo.db. This is necessary as
      the orm provides access to the version of the models that existed when
      the migration file was created.
  10. 23 Jul, 2012 7 commits
    • Christos Stavrakakis's avatar
    • Christos Stavrakakis's avatar
      Add support for IPv6 · 49929c5e
      Christos Stavrakakis authored
      - Extend the Network model with fields for holding the IPv6 subnet and
      - Update network API methods.
      - Modify ganeti hooks to return IPv6 address for all network interfaces.
        IPv6 is now derived from the IPv6 subnet of the network in Ganeti,
        instead of the old setting (PUBLIC_IPV6_PREFIX)
      - Remove obsolete setting (`PUBLIC_IPV6_PREFIX`)
      - Update management commands for IPv6
    • Christos Stavrakakis's avatar
      Encrypt Backend password · bd491ac0
      Christos Stavrakakis authored
      Use cipher to encrypt the passwords of the Ganeti backends in the DB.
      Encryption/decryption is based on a configurable key, defined by the
      ENCRYPTION_KEY setting. After modifying this setting, synnefo will be
      unable to decrypt already stored passwords, and passwords must be
      re-entered, using 'snf-manage backend-modify' command and restaring the
      server. A migration file is responsible for initially encrypting already
      stored passwords.
    • Christos Stavrakakis's avatar
      Add dirty bit to NetworkInterface · 4943dc30
      Christos Stavrakakis authored
      Extend NetworkInterface model with a dirty bit, indicating whether
      the index of the NIC is consistent with the one in Ganeti. This flag is
      set when deleting a NIC, and is switched off after processing the
      notification from Ganeti. Removing a NIC with the dirty bit on is not
    • Christos Stavrakakis's avatar
    • Christos Stavrakakis's avatar
      Major modifications to Network model · 82763c03
      Christos Stavrakakis authored
      Since Ganeti version 2.6, Ganeti is aware of private networks. We take
      advantage of this by propagating network handling to Ganeti. Network
      model is expanded to include information about the type of network
      (public routed, physical vlan, private filtered), subnet, gateway, dhcp,
      link and mac_prefix.
      - Update Network Model and delete NetworkLink model
      - Create MacPrefixPool and BridgePool models
      - Default constant settings for MacPrefix management
    • Christos Stavrakakis's avatar
      Create Backend model to represent a ganeti backend · 74771e86
      Christos Stavrakakis authored
      - Create Backend model holding info about credentials, status and resources
      - Add Backend as foreign key to VirtualMachine
      - Create a cache of Backend clients (RAPI) for better performance
  11. 06 Jun, 2012 1 commit
    • Christos Stavrakakis's avatar
      Update modules interacting with AMQP · 61467a31
      Christos Stavrakakis authored
      Update all modules which are interacting with the RabbitMQ messaging system to
      use the AMQPClient in order to use highly available queues in active/active
      Extend messages to include a unique identifier in order to handle
      duplication of messages and out of order delivery. The timestamp of the event
      that the message is describing is chosen for this.
      Extend VirtualMachine model with 'backendtime' field to hold the
      timestamp described above.
  12. 07 Mar, 2012 1 commit
  13. 08 Feb, 2012 1 commit
  14. 03 Feb, 2012 1 commit
  15. 27 Jan, 2012 1 commit
  16. 23 Jan, 2012 1 commit
  17. 24 Nov, 2011 1 commit
  18. 18 Nov, 2011 1 commit
  19. 21 Jun, 2011 1 commit
  20. 20 Jun, 2011 1 commit
  21. 14 Jun, 2011 1 commit
  22. 03 Jun, 2011 1 commit
  23. 11 May, 2011 1 commit
  24. 03 May, 2011 1 commit
  25. 19 Apr, 2011 1 commit