Only steps in bold should cause a downtime.

  • change savannah secondary node (will take a long time, need to resync all the drbd)
    gnt-instance replace-disks -n z2-7.host.gnt
    
  • update shorewall config on rennes to use new ip (86.65.39.29)
  • switch instance to new node :
    gnt-instance failover z2-7.host.gnt
    

This step should take less than 10 minutes (time to stop the vm on primary node, and start it on secondary).

After the failover, vm should be available on new node (z2-7) with secondary on z2-4, estimated downtime < 10min.

Done

savannah vm is now available on 86.65.39.29 .

Downtime was about 20 minutes (some configuration / routing issue on gw.rennes.tld, a route "10.10.1.3 via 10.10.10.254" was missing)

z2-2:~# gnt-instance info savannah.vm.gnt 
Instance name: savannah.vm.gnt
State: configured to be up, actual state is up
  Nodes:
    - primary: z2-7.host.gnt
    - secondaries: z2-4.host.gnt
  Operating system: debootstrap
  Allocated network port: 11096
  Hypervisor: kvm
    - nic_type: default (paravirtual)
    - vnc_tls: default (False)
    - kernel_args: default (ro)
    - vnc_x509_verify: default (False)
    - vnc_x509_path: default ()
    - vnc_bind_address: default ()
    - root_path: default (/dev/vda1)
    - serial_console: default (True)
    - cdrom_image_path: default ()
    - usb_mouse: default ()
    - initrd_path: default (/boot/initrd.img-2.6-domU)
    - boot_order: default (disk)
    - disk_type: default (paravirtual)
    - kernel_path: default (/boot/vmlinuz-2.6-domU)
    - acpi: default (True)
  Hardware:
    - VCPUs: 4
    - memory: 5120MiB
    - NICs:
      - nic/0: MAC: 52:54:cf:00:61:78, IP: None, bridge: br0
  Disks:
    - disk/0: drbd8, size 20.0G
      access mode:  rw
      nodeA:        z2-4.host.gnt, minor=7
      nodeB:        z2-7.host.gnt, minor=1
      port:         11097
      auth key:     95ba88401d4996a0673602db089acfebfcd83ef9
      on primary:   /dev/drbd1 (147:1) in sync, status ok
      on secondary: /dev/drbd7 (147:7) in sync, status ok
      child devices:
        - child 0: lvm, size 20.0G
          logical_id:   all/470046ff-2394-4d49-9203-886b062f8949.disk0_data
          on primary:   /dev/all/470046ff-2394-4d49-9203-886b062f8949.disk0_data (254:2)
          on secondary: /dev/all/470046ff-2394-4d49-9203-886b062f8949.disk0_data (253:6)
        - child 1: lvm, size 128M
          logical_id:   all/470046ff-2394-4d49-9203-886b062f8949.disk0_meta
          on primary:   /dev/all/470046ff-2394-4d49-9203-886b062f8949.disk0_meta (254:3)
          on secondary: /dev/all/470046ff-2394-4d49-9203-886b062f8949.disk0_meta (253:7)
    - disk/1: drbd8, size 500.0G
      access mode:  rw
      nodeA:        z2-4.host.gnt, minor=8
      nodeB:        z2-7.host.gnt, minor=2
      port:         11098
      auth key:     aceee540fd23d88b99e2ba6dd3297e23d6c6e186
      on primary:   /dev/drbd2 (147:2) in sync, status ok
      on secondary: /dev/drbd8 (147:8) in sync, status ok
      child devices:
        - child 0: lvm, size 500.0G
          logical_id:   all/f3fece3d-2381-4591-b382-10ddca1cee05.disk1_data
          on primary:   /dev/all/f3fece3d-2381-4591-b382-10ddca1cee05.disk1_data (254:4)
          on secondary: /dev/all/f3fece3d-2381-4591-b382-10ddca1cee05.disk1_data (253:8)
        - child 1: lvm, size 128M
          logical_id:   all/f3fece3d-2381-4591-b382-10ddca1cee05.disk1_meta
          on primary:   /dev/all/f3fece3d-2381-4591-b382-10ddca1cee05.disk1_meta (254:5)
          on secondary: /dev/all/f3fece3d-2381-4591-b382-10ddca1cee05.disk1_meta (253:9)

Dns updated :

  • etc/bind/db.fsffrance.org

    a b  
    99 
    1010$TTL                   86400 
    1111@                       IN      SOA     ns1.fsffrance.org.org. hostmaster.fsffrance.org. (  
    12                        2009110901      ; serial 
     12                       2009111601      ; serial 
    1313                       28800           ; refresh  
    1414                       7200            ; retry  
    1515                       604800          ; expire 
     
    207207cmd28          IN      A       86.65.39.28 ;; Rennes 28 ;; ubuntu-fr herve@moulticast.net 
    208208cmd29          IN      A       86.65.39.29 ;; Rennes 29 ;; savannah loic@gnu.org 
    209209cmd30          IN      A       86.65.39.30 ;; Rennes 30 
    210 savannah       IN      A       87.98.156.150  
     210savannah       IN      A       86.65.39.29 ;; savannah loic@gnu.org 
    211211trac           IN      CNAME   main.binbang.org. ;; loic@dachary.org 
    212212jolicloud      IN      CNAME   cmd18 
    213213munin          IN      CNAME   main.binbang.org. ;; loic@dachary.org