Project

General

Profile

Segnalazione #565

FUSS-CLIENT fa un gran pasticcio coi nomi: 1.sia nel client (/etc/hosts); sia sul server (/etc/clusters)

Added by Andrea Padovan over 3 years ago. Updated about 3 years ago.

Status:
Chiuso
Priority:
Immediata
Start date:
07/16/2018
Due date:
% Done:

0%


Description

Ciao Paolo,
ho notato che quando "joiniamo" i client con il comando fuss-client -a -H "NOME-PC",
1) il fuss-client NON sempre cambia correttamente la seconda riga del file /etc/hosts (vedi file allegato ) indipendentemente che sia stato "joinato" la prima volta e/o tolto e rimesso.
Inoltre a volte scrive il nome del dominio, a volte no.

2) Stesso nome pasticciato e a volte non cambiato , lo registra sul server nel file /etc/clusters.

Per me la soluzione è stata per ora quella di
- andare PC per PC
- "s-joinare" il PC dal dominio (col comendo # fuss-client r -p)
modificare a mano la seconda riga del file /etc/hosts inserendo due volte il nome corretto
es. # 127.0.1.1 aula01 aula01
- "ri-joinare" il PC
- ANDARE SUL SERVER E CORREGGERE A MANO IL CONTENUTO DEL FILE "/etc/clusters"
Dopo tutte queste operazioni, poi si ha una situazione "pulita" e visibile in maniera chiara da OCTONET.

Ho già verificato la stessa cosa in 2 mie scuole e un collega mi conferma sintomi simili. Provare per credere!!
Ti chiedo di cercare rimedio con urgenza. Siamo già nel pieno della migrazione delle scuole e immagino saremo costretti a tornare a rifare lavori di correzione nelle scuole già fatte(tempo permettendo). Grazie Andrea

FOTO-etc-clusters-gandhi-laives.png View (72 KB) Andrea Padovan, 07/16/2018 05:20 PM

FOTO-etc-hosts-client-fuss.png View (26.7 KB) Andrea Padovan, 07/16/2018 05:20 PM

FOTO-otonet-clusters-e-pcs.png View (70 KB) Andrea Padovan, 07/16/2018 05:20 PM

Associated revisions

Revision 75d4e0cf (diff)
Added by Elena Grandi about 3 years ago

Set the hostname in /etc/hosts and restart the network when changing hostname.

refs: #565

Revision 561c4c9e (diff)
Added by Simone Piccardi about 3 years ago

Adding correction for registering just the hostname in the server
/etc/clusters file and resync local contents of /etc/hosts using the
server domain to have coeherence with hostname --fqdn. Refs #565

History

#1 Updated by Paolo Dongilli over 3 years ago

  • Assignee changed from Paolo Dongilli to Andrea Padovan

Non posso pensare ad un comportamento non deterministico di fuss-client nell'ipotesi

  1. che si parta dallo stesso clone
  2. che si usino gli stessi parametri di fuss-client

Vedo che nell'allegato che mandi (FOTO-etc-clusters-gandhi-laives.png) c'è un po' di fritto misto ed errori di disattenzione:

  1. convenzioni diverse nella denominazione dei cluster (vabbè, sono delle stringhe)
  2. host finiti nei cluster sbagliati (info1-pc10 finito nel cluster AULA_INFO_2, oppure info15 ??? presente sia in AULA_INFO_2 che nel cluster 1.BLOCCO)
  3. host joinati con il hostname originale dell'immagine (fuss9-64bit o fuss9-32bit)
  4. bisogna capire poi come mai il host bunker02 sia andato, mentre bunker01 (come vedo dal file /etc/hosts che hai mandato) sia diventato bunker-03 in /etc/clusters

Inoltro il ticket. Immagino che ci sarà un po' di interazione.

#2 Updated by Paolo Dongilli over 3 years ago

  • Assignee changed from Andrea Padovan to Simone Piccardi

#3 Updated by Simone Piccardi over 3 years ago

  • Assignee changed from Simone Piccardi to Elena Grandi

#4 Updated by Elena Grandi over 3 years ago

  • Status changed from Nuovo to In elaborazione

#5 Updated by Elena Grandi over 3 years ago

  • Assignee changed from Elena Grandi to Andrea Padovan

Sto cercando di riprodurre la situazione (o meglio, le situazioni) e ho un po' di commenti/domande.

Innanzitutto, la riga corretta da ottenere in /etc/hosts non è quella con due volte il nome della macchina, ma la versione in cui la prima volta c'è il dominio, ad esempio

127.0.1.1 aula01.gandhi.lvs aula01

Per impostare correttamente il dominio, bisogna passare a fuss-client il nome completo della macchina (esempio fuss-client -a -H aula01.gandhi.lvs): questa parte è sicuramente da documentare meglio.

Sia usando -H solo_hostname che usando -H hostname.dominio non sono però riuscita a riprodurre il caso in cui in /etc/hosts risultano due nomi diversi; continuo a provarci, ma avere indizi sulla diversità degli ambienti in cui succede sarebbe utile.

Inoltre confermo che fuss-client -r toglie le configurazioni locali, ma non rimuove la macchina dal cluster, operazione che per vari motivi va fatta lato server; ricordo una conversazione sull'argomento dell'anno scorso, devo cercarla per i dettagli.

#6 Updated by Elena Grandi over 3 years ago

  • Assignee changed from Andrea Padovan to Elena Grandi

mi correggo: ho riprodotto la situazione lanciando più volte fuss-client -a sulla stessa macchina (come se fosse stato lanciato con un parametro sbagliato a -H e poi rilanciato per correggere), proseguo nell'indagine

#7 Updated by Elena Grandi about 3 years ago

  • Status changed from In elaborazione to Commenti
  • Assignee changed from Elena Grandi to Andrea Padovan

Ho appena caricato sui repository la versione 9.0.4 di fuss-client che nelle mie prove è più affidabile nell'impostare l'hostname, anche dopo un fuss-client -r -p e successivo nuovo fuss-client -a -H <hostname>

potete provare e vedere se risolve tutti i casi?

#8 Updated by Paolo Dongilli about 3 years ago

Elena Grandi ha scritto:

Ho appena caricato sui repository la versione 9.0.4 di fuss-client che nelle mie prove è più affidabile nell'impostare l'hostname, anche dopo un fuss-client -r -p e successivo nuovo fuss-client -a -H <hostname>

potete provare e vedere se risolve tutti i casi?

- individuazione automatica server FUSS senza usare parametro s: OK!
scelta interattiva cluster: OK! (ovviamente se il numero di cluster > 1)
- parametro -H in fuss-client lavora correttamente e modifica a dovere la riga di /etc/hosts nelle due casistiche

  127.0.1.1 HOSTNAME.DOMINIO   HOSTNAME

    oppure

  127.0.1.1 HOSTNAME
  

Sono del parere che si potrebbe scegliere sempre la variante più breve
  127.0.1.1 HOSTNAME
  

per evitare di portarsi sempre dietro il dominio dei host, che mi ritrovo in /etc/clusters, in OctoNet e in OctoMon.

- provato anche più volte con successo fuss-client -r -p e fuss-client -a -H <hostname>

#9 Updated by Elena Grandi about 3 years ago

  • Assignee changed from Andrea Padovan to Paolo Dongilli

La versione

127.0.1.1 HOSTNAME.DOMINIO   HOSTNAME

è però quella corretta, se è stato impostato un dominio

per togliere l'hostname da /etc/clusters posso guardarci, però meglio aprire un'altro ticket

#10 Updated by Paolo Dongilli about 3 years ago

  • Assignee changed from Paolo Dongilli to Andrea Padovan

Elena Grandi ha scritto:

La versione
[...]

è però quella corretta, se è stato impostato un dominio

per togliere l'hostname da /etc/clusters posso guardarci, però meglio aprire un'altro ticket

Ok, intanto inoltro ad Andrea per ultima verifica e chiusura.
Apro nuovo ticket per rimozione hostname da /etc/clusters.

#11 Updated by Elena Grandi about 3 years ago

  • Assignee changed from Andrea Padovan to Paolo Dongilli

Ehm, sorry, intendevo "rimozione del dominio" (ovvero avere in /etc/clusters HOSTNAME e non HOSTNAME.DOMINIO)

(che è una modifica veloce, bisogna solo capire se ci fossero motivi per cui era stata esplicitamente messa l'altra variante)

#12 Updated by Paolo Dongilli about 3 years ago

  • Assignee changed from Paolo Dongilli to Elena Grandi

Elena, direi di lasciare così.
Se qualcuno vuole avere HOSTNAME.DOMINIO in /etc/clusters allora in /etc/hosts mette

127.0.1.1 HOSTNAME.DOMINIO   HOSTNAME

altrimenti usa

127.0.1.1 HOSTNAME

semplicemente come si è sempre fatto. Non vedo alcuna controindicazione ad usare in /etc/hosts solo

127.0.1.1 HOSTNAME

senza .DOMINIO o sto trascurando qualcosa?

In OctoNet ed anche OctoMon è a mio avviso ridondante avere per ciascun host anche il DOMINIO, direi quasi fastidioso.

#13 Updated by Elena Grandi about 3 years ago

  • Assignee changed from Elena Grandi to Paolo Dongilli

Che avendo la riga senza .DOMINIO in /etc/hosts la macchina non è in grado di risolvere il proprio FQDN.

Che la cosa causi o meno problemi dipende un po' da cosa sta girando sulla macchina stessa, ma in generale il valore che viene configurato dall'installer o simili è con il dominio.

Voi l'avete sempre corretto per avere solo la versione senza dominio?

#14 Updated by Simone Piccardi about 3 years ago

Un momento, cosa mettere in /etc/cluster è materia di gusto, ma in /etc/hosts assolutamente no e perché le cose funzionino a modo e non si vada ad incappare in problemi dopo è necessario che ci sia un nome a dominio corretto corrispondente a quello che si sta usando sul server.

Quindi 127.0.1.1 hostname NON va bene, ci deve essere 127.0.1.1 hostname.dominio hostname, come viene messo (correttamente) dall'installer Debian.

Le due cose sono scorrelate, e devono restare tali.

#15 Updated by Paolo Dongilli about 3 years ago

  • Assignee changed from Paolo Dongilli to Simone Piccardi

Elena Grandi ha scritto:

Che avendo la riga senza .DOMINIO in /etc/hosts la macchina non è in grado di risolvere il proprio FQDN.

Tieni conto però che il .DOMINIO è usato solo all'interno della LAN di ciascuna scuola.
E le macchine risolvono cmq il proprio FQDN anche senza mettere il .DOMINIO in /etc/hosts perché c'è pur sempre il file /etc/resolv.conf che viene aggiornato sicuramente all'avvio della macchina:

$ ls -l /etc/resolv.conf
lrwxrwxrwx 1 root root 35 apr  9 10:39 /etc/resolv.conf -> /var/run/NetworkManager/resolv.conf

$ ls -l /var/run/NetworkManager/resolv.conf
-rw-r--r-- 1 root root 61 lug 20 15:20 /var/run/NetworkManager/resolv.conf

Un esempio con la macchina che sto usando (hostname=fuss9-32bit IP=192.168.0.78):

/etc/hosts

127.0.0.1    localhost
127.0.1.1    fuss9-32bit

/etc/resolv.conf

domain fussbox.blz
search fussbox.blz
nameserver 192.168.0.1

$ host -r 192.168.0.78
78.0.168.192.in-addr.arpa domain name pointer fuss9-32bit.fussbox.blz.

### pingo un'altra macchina
$ ping client1
PING client1.fussbox.blz (192.168.0.95): 56 data bytes
...

$ host -r 192.168.0.95
95.0.168.192.in-addr.arpa domain name pointer client1.fussbox.blz

Che la cosa causi o meno problemi dipende un po' da cosa sta girando sulla macchina stessa, ma in generale il valore che viene configurato dall'installer o simili è con il dominio.

Voi l'avete sempre corretto per avere solo la versione senza dominio?

No, non è in genere stato corretto, ma da un certo momento in poi nel 2017 mi sono accorto che in octonet ed octomon e nei file /etc/clusters comparivano anche i domini che prima non c'erano. Come se prima il dominio, sebbene presente in /etc/hosts, venisse trascurato dal fuss-client e ad un certo punto venisse riconsiderato dal fuss-client.

Concordo con te Simone che /etc/hosts del client ed /etc/clusters sul server sono cose slegate ed in /etc/clusters si può mettere ciò che si vuole. Si parla appunto di quanto viene scritto in /etc/clusters da fuss-client e del fatto che dallo scorso anno fuss-client ad un certo punto ha iniziato a mettere in /etc/clusters anche il nome di dominio.

Per ovviare a ciò la soluzione (che ripeto, a mio avviso non ha conseguenze) è quella di mettere il solo HOSTNAME in /etc/hosts.

Però voglio una vostra ulteriore conferma di ciò che scrivo.

Certamente l'altra soluzione è quella di tenere il DOMINIO in /etc/host come prevede l'installer di Debian ma far sì che fuss-client non lo riporti in /etc/clusters e di conseguenza in OctoNet poiché inutilmente ridondante (sempre a mio parere).

#16 Updated by Simone Piccardi about 3 years ago

  • Assignee changed from Simone Piccardi to Paolo Dongilli

Non è questione di risoluzione del DNS, quella funziona e non dipende dal client la fa il DNS del server ed il DNS il client li prende dal server via DHCP; è che hostname --fqdn (che deve essere indipendente dalla rete per cui non viene chiesto al DNS, ma ricavato localmente) così non funziona (nel senso che non da un nome dominio pienamente qualificato, resta solo l'hostname).

Gli effetti sul client sono sicuramente limitati, ma non sono semplici da stimare visto che comunque c'è una discrepanza fra quello che è l'FQDN secondo il DNS e quello che è l'FQDN secondo la configurazione locale, ed alcuni servizi (postfix ad esempio) usano quello locale. Il caso postfix per il client è poco significativo, ma non è detto la cosa non avvenga anche per altro.

Se in /etc/cluster si preferisce avere solo l'hostname, a questo punto basta far si che vi sia registrato solo quello. Eviterei proprio di forzare ad averlo anche in /etc/hosts solo perché poi venga messo in /etc/cluster.

#17 Updated by Simone Piccardi about 3 years ago

Cerco di essere più chiaro.

Anzitutto: la procedura per installare il client impostando l'hostname è quella di usare fuss-server -a -H nome, avendo cura che nome sia solo il nome della macchina e non il nome completo con il dominio. Per evitare errori nelle versioni future metteremo un controllo che non ci siano punti nell'argomento che si passa a -H.

Il fuss-client metterà dentro /etc/cluster (quando gli verrà richiesto) solo il nome della macchina (questo dalla prossima versione) e cambierà l'hostname della macchina come fa adesso, questo a partire dalla 9.0.7. Correggerà se necessario il contenuto di /etc/hosts in modo che sia coerente.

Tenere /etc/hosts non coerente, se si mettono i nomi semplici in /etc/hosts non ha, per la parte di rete, nessuna conseguenza. Quello che dicevo e che non è valutabile in maniera chiara un eventuale impatto dello stesso sull'installazione di eventuali servizi sul client.

#18 Updated by Simone Piccardi about 3 years ago

La versione 9.0.7 del client è stata pubblicata

#19 Updated by Paolo Dongilli about 3 years ago

  • Assignee changed from Paolo Dongilli to Simone Piccardi

Collaudata la versione 9.0.7 di fuss-client e fa ciò che è stato concordato con i tecnici.

Lasciamo per ora in sospeso la richiesta di cancellazione di un host da /etc/clusters sul server quando viene lanciato

fuss-client -r -p

su client in quanto va valutato l'effort per questa modifica e comunque per questo è stato aperto il ticket #569

Il presente ticket può essere chiuso.

#20 Updated by Simone Piccardi about 3 years ago

  • Status changed from Commenti to Chiuso

Also available in: Atom PDF