Je gère un serveur de calcul pour les étudiants d'un certain laboratoire d'une certaine université.
La maintenance n'a pas suivi le rythme de l'augmentation des serveurs informatiques, et les mises à jour logicielles sont également intenses.
En premier lieu, la racine de tout mal est que le système d'exploitation est installé sur chaque serveur.
Réduisez les coûts de gestion avec Preboot eXecution Environment (PXE) Boot
, qui démarre le système d'exploitation à partir du LAN.
Utilisez Linux Terminal Server Project (LTSP)
pour gérer l'hôte.
https://ltsp.org/ En gros, ce que vous pouvez faire
Il est très facile de faire une copie du serveur configuré.
est. Il n'est pas nécessaire d'installer le système d'exploitation de destination de la copie. Il n'est pas nécessaire de configurer SSH ou HDD en premier lieu.
Les paramètres DHCP sont requis pour le démarrage PXE, mais cette fois, nous utiliserons une fonction appelée proxy DHCP. Le serveur DHCP fourni avec le routeur est utilisé tel quel et il n'y a pas de paramètres spéciaux.
Dans mon environnement, les comptes sont gérés par «NIS» et «NFS». Je vais expliquer pour qu'il puisse être utilisé même sans ces systèmes de gestion. Cependant, du point de vue de la disponibilité, nous vous recommandons d'utiliser NIS ou NFS pour la gestion des comptes et la redondance des données.
Dans cet article, nous allons vérifier le fonctionnement sur ʻUbuntu Server 18.04.3`. Hébergez un poste de travail raisonnablement bon. Les problèmes de dépendance sont gênants, je vais donc commencer par une installation propre.
Lors du déploiement d'un environnement GPU, branchez le GPU à la fois sur l'hôte et le client. En raison de la commodité du pilote GPU, il peut être nécessaire de désactiver le démarrage sécurisé du BIOS. Cela peut fonctionner sans GPU sur l'hôte, mais ce n'est pas confirmé.
Internet <--> Router(DHCP) <--(HUB)--> Host
|--> Client_1
NIS <--|--> Client_2
NFS <--|--> Client_n
Déployez LTSP sur la machine hôte. Suivez la page d'installation de LTSP (https://ltsp.org/docs/installation/).
$ sudo apt -y purge --auto-remove indicator-application mate-hud snapd
$ sudo apt -y install synaptic
$ sudo add-apt-repository -y ppa:ltsp
$ sudo apt update
$ sudo apt -y install --install-recommends ltsp ltsp-binaries dnsmasq nfs-kernel-server openssh-server squashfs-tools ethtool net-tools epoptes
Il existe de petites options, mais dans la plupart des environnements, les paramètres par défaut conviennent. Voir la page d'installation de LTSP (https://ltsp.org/docs/installation/) et la documentation (https://ltsp.org/man/) pour plus d'informations.
$ sudo ltsp dnsmasq
$ sudo install -m 0660 -g sudo /usr/share/ltsp/common/ltsp/ltsp.conf /etc/ltsp/ltsp.conf
$ sudo ltsp image /
$ sudo ltsp ipxe
$ sudo ltsp nfs
$ sudo ltsp initrd
À ce stade, vous êtes prêt à démarrer. Commençons par le client et vérifions si vous pouvez vous connecter. Activez le démarrage réseau (PXE BOOT) à partir des paramètres du BIOS et donnez la priorité au réseau local dans l'ordre de démarrage. Par défaut, / home est déjà monté avec NFS, donc cela peut être suffisant pour votre environnement.
Le serveur de calcul doit être connecté via SSH. Activez SSH et définissez une adresse IP statique. Vous avez besoin de l'adresse MAC de chaque serveur.
Créer une clé d'hôte SSH pour le client
$ sudo mkdir -p /etc/ltsp/etc/ssh
$ sudo ssh-keygen -A -f /etc/ltsp
$ sudo mv /etc/ltsp/etc/ssh/ssh_host_* /etc/ltsp/ #Déplacer car la clé n'est pas générée là où vous vous attendiez
$ sudo rm -r /etc/ltsp/etc/
Ajouter des paramètres SSH
$ sudo vim /etc/ltsp/ltsp.conf
[clients]
KEEP_SYSTEM_SERVICES="ssh"
POST_INIT_CP_KEYS="mv /etc/ltsp/ssh_host_* /etc/ssh/"
Ajout de paramètres IP statiques pour chaque client
$ sudo vim /etc/ltsp/ltsp.conf
[00:11:22:33:44:55]
HOSTNAME="client1"
KERNEL_PARAMETERS="ip=192.168.0.10:\${srv}:\${gateway}:\${netmask}"
Si vous utilisez le GPU de Nvidia, installez nvidia-driver
sur votre hôte.
Installez également CUDA.
Aucun ajout n'est requis pour les paramètres LTSP.
Cependant, lorsque je connecte l'écran au GPU, l'écran dépasse. (enquête en cours)
$ wget https://developer.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.105_418.39_linux.run
$ sudo sh cuda_10.1.105_418.39_linux.run --silent --driver --toolkit
Veuillez configurer NIS sur l'hôte. Ne configurez pas NFS sur l'hôte. Afin d'activer NFS sur le client, vous devez ajouter une description de FSTAB. Cet article Mémo de configuration CentOS7 (nouveau serveur de laboratoire) peut être utile.
$ sudo vim /etc/ltsp/ltsp.conf
[clients]
FSTAB_HOME="file-server:/home /home nfs defaults"
Si vous modifiez l'environnement hôte ou les paramètres LTSP, vous devez effectuer les opérations suivantes: Ensuite, redémarrez le client et cela prendra effet.
$ sudo ltsp image /
$ sudo ltsp ipxe
$ sudo ltsp nfs
$ sudo ltsp initrd
J'écrirai ici un mémorandum comme matière à remettre à mon successeur. Si vous avez des questions ou des erreurs, veuillez laisser un commentaire.
Recommended Posts