Project

General

Profile

Bug #40568

bumper le module ganeti à 1.0.5 pour koumbit

Added by Gabriel Filion 2 months ago. Updated about 2 months ago.

Status:
Closed
Priority:
Normal
Target version:
-
Start date:
2022-04-22
Due date:
2022-05-04
% Done:

0%

RT ticket:
Affected versions:
Points:
1
Sprint:

Description

J'ai fait une release du module ganeti vla déjà qq temps mais jamais bumpé son utilisation chez Koumbit.

Il y a des fixes particulièrement intéressants pour koumbit sur le hook de configuration d'interfaces réseau (e.g. éviter de modifier le fichier /etc/resolv.conf de la node ganeti)

J'ai déjà créé un review pour le module sur la branche production.

Il reste donc à bumper le module et tester les changements que ça apporte. voir la branche dev-rdm40568_bump_ganeti

$ puppetdb nodes-contain Profile::Ganeti | jq .
[
  "barricade0.koumbit.net",
  "barricade1.koumbit.net",
  "bipbip.communautique.qc.ca",
  "versa.koumbit.net",
  "vandales.koumbit.net",
  "vandana.koumbit.net",
  "testganeti0.office.koumbit.net",
  "testganeti1.office.koumbit.net",
  "vuvu.koumbit.net",
  "varan.koumbit.net",
  "testganeti2.office.koumbit.net",
  "badbrains.koumbit.net",
  "funambules0.koumbit.net",
  "xen14.514h.com",
  "hypatie.koumbit.net",
  "vampire.koumbit.net",
  "vices.koumbit.net",
  "vouivre.koumbit.net",
  "xen16.514h.com",
  "b7.koumbit.net",
  "tanit.office.koumbit.net",
  "xen8.514h.com",
  "xen9.514h.com",
  "xen11.514h.com",
  "remix0.koumbit.net",
  "xen12.514h.com",
  "valerie.koumbit.net",
  "ulysse.koumbit.net",
  "minerve.koumbit.net",
  "hannah.m2014.net",
  "sylvester.louvain.communautique.quebec",
  "xen15.514h.com" 
]

History

#1 Updated by Gabriel Filion 2 months ago

  • Description updated (diff)
  • Due date set to 2022-04-27

J'ai créé un commit sur une branche de dev pour faire le bump.

Je vais lancer des tests en noop sur toutes les nodes ganeti la semaine prochaine pour vérifier ce qui se passe avec la nouvelle version.

#2 Updated by Gabriel Filion 2 months ago

  • Assignee set to Gabriel Filion

#3 Updated by Gabriel Filion 2 months ago

  • Description updated (diff)

liste des nodes ganeti

#4 Updated by Gabriel Filion 2 months ago

  • Status changed from New to In progress

vu qu'on a ça, j'ai roulé une première shot de noop sur testganeti0.office.k.n

Je vois les changements prévus sur le fact ganeti et sur les hooks debootstrap et ça a l'air d'être tout, donc ça m'a l'air tout beau je crois. comme c'est un environnement de workparty je vais appliquer les changements pour de vrai et voir si tout va bien pour la création d'une instance après ça.

#5 Updated by Gabriel Filion 2 months ago

cool, la création a été longue (vu que c'est une bouze de 5400) mais ça a bien fonctionné, et l'interface réseau était bien configurée en ipv4.

Donc je vais lancer une run noop partout pour voir si c'est le même genre de changeset. si oui, on sera prêt à merger ça la semaine prochaine.

#6 Updated by Gabriel Filion 2 months ago

  • Due date changed from 2022-04-27 to 2022-05-04

J'ai vu des packages sur hold mais ça c'est notre SNAFU sur les vieux serveurs pas upgradés.

sinon j'ai vu ça sur varan, versa, vampire et vouivre, mais si je me trompe pas c'est seulement parce que j'ai pas merge production dans la branche de dev pour le bump récemment:

  Notice: /Stage[main]/Apt/File[/etc/apt/preferences.d/buster_backports_default.pref]/ensure: current_value 'file', should be 'absent' (noop)
  Notice: /Stage[main]/Apt/File[/etc/apt/preferences.d/ganeti-from-buster-backports.pref]/ensure: current_value 'file', should be 'absent' (noop)

aussi un changement au motd de tanit, mais encore une fois c'est juste que j'ai pas merge production dans la branche de dev:

  Notice: /Stage[main]/Motd/File[/etc/motd]/content: 
  --- /etc/motd    2022-04-25 13:12:18.313873726 -0400
  +++ /tmp/puppet-file20220429-12662-zi8zfn    2022-04-29 16:17:02.280381983 -0400
  @@ -6,7 +6,7 @@
    * vgchange -a y
    * gnt-instance startup ns5.office.koumbit.net
    * gnt-instance startup recurse3.office.koumbit.net
  - * gnt-instance startup recurse4.office.koumbit.net
  + * gnt-instance startup ldap0.office.koumbit.net
    * sed -i '/^nameserver/d;s/^#\(nameserver\)/\1/' /etc/resolv.conf
    * gnt-instance startup --node tanit.office.koumbit.net
    * puppet agent --enable

un autre changement sur remix0 et ça aussi c'est clairement qqch de production qui a pas été mergé dans la branche de dev:

  Notice: /Stage[main]/Network/Network::Interface[br0]/Concat[/etc/network/interfaces]/File[/etc/network/interfaces]/content: 
  --- /etc/network/interfaces    2022-04-26 17:35:53.742866566 -0400
  +++ /tmp/puppet-file20220429-16699-1aim9jn    2022-04-29 16:17:58.677208272 -0400
  @@ -7,6 +7,6 @@
       address 199.58.81.91
       netmask 255.255.255.192
       gateway 199.58.81.65
  -    bridge_ports enp3s0f0
  +    bridge_ports enp6s0f0
       bridge_stp off
       bridge_fd 0

avec ça je crois que je me sens à l'aise avec les changements que ça apporte. je vais faire le merge la semaine prochaine

#7 Updated by Gabriel Filion about 2 months ago

  • Status changed from In progress to Closed

C'est mergé en prod et je suis en train d'appliquer le changement sur les nodes ganeti.

J,avais pas revérifié que le changement au fact ganeti fonctionnait. Ça marche pas mal mieux maintenant (facter comprend que c'est une structure de données):

root@funambules0:~$ facter -p ganeti
{
  cluster_name => "funambules0.koumbit.net",
  cluster_version => "2.16.0",
  is_master => true,
  nodes => {
    funambules0.koumbit.net => {
      primary_ip => "199.58.80.240",
      secondary_ip => "10.100.44.0",
      offline => false,
      master_candidate => true
    }
  },
  instances => [
    "funambules-alternc.koumbit.net",
    "funambules-lool.koumbit.net",
    "funambules-nc-test.koumbit.net",
    "funambules-nc.koumbit.net" 
  ]
}
root@funambules0:~$ facter -p ganeti.cluster_name
funambules0.koumbit.net
root@funambules0:~$ facter -p ganeti.nodes
{
  funambules0.koumbit.net => {
    primary_ip => "199.58.80.240",
    secondary_ip => "10.100.44.0",
    offline => false,
    master_candidate => true
  }
}

Le seul endroit que j'ai trouvé qui utilisait le fact c'était le script puppetdb.py. la fonction node-documentation ne fonctionnait plus, donc j'ai corrigé ça (e.g. on n'a plus besoin d'interpréter la valeur qui était toute une seule string)

j'ai prévenu les autres de l'équipe du changement juste pour qu'on sache si jamais y'a un bug ça peut p-e venir de où. le travail est terminé donc.

Also available in: Atom PDF