Archive

Archive for the ‘Informatique’ Category

Cure d’amaigrissement pour mon smartphone.


J’ai changé de smartphone il y a plus ou moins deux ans. Mon vénérable Note, premier modèle est maintenant entre les mains d’un de mes frangins, après avoir reçu sa n-ième batterie et avoir été mis à jour vers LineageOS.

J’utilise depuis un Note 4. Nouvelle batterie, remise à zéro d’usine, flashage de la version officielle du constructeur, et mise à jour. Depuis, il tourne presque comme une horloge. Le presque tient à quelques petits coups d’humeur de temps en temps, mais rien de rédhibitoire.

Après ces deux années d’utilisation quotidienne, il est temps de faire un peu de ménage, et de procéder à quelques ajustements.
80486-Desktop-PC

En préambule, un petit retour en arrière

Je n’en suis pas à mon coup d’essai dans le nettoyage et l’allégement de système. C’est un exercice très intéressant et ludique, toutefois moins facile avec les systèmes modernes.

J’ai possédé un Macintosh 512Ke acheté d’occasion, il y a une vingtaine d’années. Le bestiau n’avait pas de disque dur, et n’était doté que d’un seul méga octet de RAM et de deux lecteurs de disquettes. L’utilisation de principes analogues à ceux décrits plus loin permettaient dès le démarrage terminé, de disposer du système, des deux applications principales, Mac Write et un petit tableur dont j’ai oublié le nom, plus un éditeur de notes en « Desk Accessory » – DA pour les intimes. Le second lecteur de disquettes restait totalement libre pour y stocker mes documents.

Mes usages du smartphone

Mon téléphone me sert essentiellement pour

  • Téléphoner, envoyer et lire des SMS. Classique.
  • Lire les nouveaux articles sur les blogs que je suis.
  • Prendre des photographies. Actuellement mon téléphone en stocke plus d’un millier.
  • Écouter de la musique.
  • Récupérer et écouter des podcasts.
  • Me réveiller le matin, si je loupe le chant du coq. Les coqs se font rares…
  • Lire mes fils d’actualité sur Mastodon et Diaspora.
  • Faire quelques calculs avec l’application Free-42. RPN rules !
  • Regarder quelques (sic!) vlogs sur YT lorsque c’est nécessaire/possible/intéressant.

Quelques outils me sont nécessaires, essentiellement pour procéder à des sauvegardes.

Nettoyage des applications inutilisées

L’espace de stockage est suffisant sur le Note-4, mais ce n’est pas une raison d’en abuser. Au fil du temps j’ai installé des applications, quelques utilitaires, deux ou trois jeux.

Je ne joue que très rarement. Un bon bouquin ou un peu de codage sont bien plus utiles pour mon ordinateur biologique. Exit donc les jeux.

Les applications de réseaux sociaux habituels, FB, TW, G+, etc ne peuvent pas être désinstallés, mais leurs mises à jour désormais inutiles dans mon cas le peuvent. Hop, quelques dizaines/centaines (je n’ai pas mesuré) de MO sont libérés. Je les ai par ailleurs désactivés dans les paramètres du téléphone.

Exit également les Speed-Test, émulateurs, éditeurs de mémo, dictionnaires, claviers virtuels et autres items apparentés.

Une bonne chose de faite !

Les services superfétatoires

Par mesure d’économie de batterie, de bande passante, et de forfait – encore que mon forfait actuel est plus que suffisant – je désactive systématiquement tous les services inutilisés :

  • Bluetooth
  • GPS
  • Mise à jours système
  • Mise à jour automatique des applications
  • Multi fenêtre
  • Point d’accès mobile
  • D’autre que j’ai oubliés, faute d’utilisation

Besoin d’une connectivité bluetooth ? J’active lorsque c’est nécessaire et désactive sitôt après. Wifi, Données mobiles, GPS ? Idem.

En passant, j’utilise le même principe pour contrôler ma consommation d’électricité domestique : seuls le réfrigérateur et la chaudière restent allumés – branchés – en permanence. Même la box internet y passe.

L’écran d’accueil

De quatre, je suis passé à un écran d’accueil qui regroupe sous l’horloge ,qui est l’unique widget que j’utilise, les applications les plus utilisées.

Dans le lanceur d’application – j’utilise Nova, dont j’ai acheté une licence – les applications inutiles ou inutilisées sont progressivement regroupées dans un unique dossier/tiroir/whatever.

Le dock

Le dock regroupe mon top-four des applications que j’utilise :

  • Free-42 : émulation d’une calculatrice HP 41/HP 42.
  • Un dossier contenant le répertoire, l’application de téléphonie, les messages
  • L’horloge/alarme (mon réveil matin)
  • Un dossier contenant les applications de photographie de « galerie photo. »

Au centre l’accès à la liste complète des applications installées.

Un petit plus, en passant

Mon téléphone ne contient pas de données « critiques », type numéro de carte bleues, mais je préférerais qu’en cas de perte ou de vol, personne ne puisse y récupérer quoi que ce soit. Un téléphone, c’est comme une brosse à dents : c’est personnel.

J’ai donc activé le chiffrage  du téléphone et de la carte SD. Ça  monopolise le téléphone le temps de tout chiffrer, mais la perte de performances en utilisation courante est imperceptible.

Ce qu’il reste

Au travail, j’utilise mon téléphone de bureau, bien pratique avec son casque « enveloppant ». Pour le reste, je téléphone très peu. Par contre, je ne me limite pas côté SMS, même si je tente de rester concis.

Ce qu’il reste, donc, c’est que j’aurais plus besoin d’un téléphone un peu moins smart, qui serve pour les  conversations vocales, les SMS, la musique et la photographie, et qui fournisse un accès internet mobile par Wifi lorsque c’est nécessaire. La partie internet – Web, mail, etc – serait utilisée depuis une tablette, ou un Netbook. Ça ferait deux appareils au lieu d’un seul, mais deux appareils optimisés pour leurs usages respectifs.

Sur ce point, je ne suis clairement pas dans l’air du temps : du PDA totalement déconnecté des années 1990/2000 au smartphone/phablet tout-en-un et ultra-connecté d’aujourd’hui, je pense que nous sommes passés d’un extrême à l’autre.

Ménage terminé …

Cette petite digression terminée, mon téléphone est un peu allégé. L’activation des données mobiles ou du Wifi ne provoquent plus de délais dus par exemple à la détection des mises à jour, et les applications qui me servent réellement sont plus rapides à retrouver dans mon unique page d’accueil.

Creative Commons License

Crédits Photo :

Publicités
Catégories :Informatique Étiquettes : ,

Docker ! Swarm ! Arrimage !

30 janvier 2018 Laisser un commentaire

Désolé, nouvelle remontée de « Goldorak ».

Il est grand temps de reprendre cette petite série d’articles sur Docker, et de relier mes trois nœuds Docker indépendants en un cluster Docker, en utilisant le mode Swarm.

Pour rappel :

Avertissement

Cette série d’article ne vise rien d’autre qu’à formaliser ma découverte de la conteneurisation d’applications sous Docker.

L’utilisation de Docker en production demande de mettre en place une politique de sécurité, des sauvegardes, une redondance du stockage, etc

Activation du mode swarm

Pour le moment, j’ai trois nœuds Docker totalement indépendants. Un container (grosso modo une application)  lancée sur un nœud y reste, et si le nœud en question est éteint, l’application devient inaccessible.

Pour simplifier, le mode swarm permet d’éviter ce problème, en considérant l’ensemble des nœuds Docker comme une seule machine Docker, un swarm (essaim en français).

D’autres produits logiciels permettent d’atteindre le même but, mais pour le moment au moins, Swarm fera l’affaire.

Le principe de base

  1. Désigner un nœud comme manager
  2. Activer le mode swarm de Docker sur le manager
  3. Relier des nœud « workers » au manager
  4. Lancer des services, applications, etc en passant par le manager

nota: un manager n’est qu’un worker un peu particulier, et des applications et services conteneurisés pourront s’y exécuter.

Initialisation du swarm

J’ai choisi d’utiliser le nœuds island1 (adresse IP 192.168.0.11) comme manager.

Une fois connecté sur island1 avec le compte user1, il suffit d’une ligne de commande : docker swarm init –advertise-addr 192.168.0.11 .

L’option « –advertise-addr 192.168.0.11 » spécifie que des nœuds docker peuvent rejoindre le swarm via l’adresse ip 192.168.0.11 .

$ docker swarm init --advertise-addr 192.168.0.11
Swarm initialized: current node (ictdgwdx9x3o52a5lzgudxrxe) is now a manager.

To add a worker to this swarm, run the following command:

docker swarm join \
 --token SWMTKN-1-092t7vsiejgmz1i60gro2ww90m8qpiz2jb51k3pxrxuxvnzyih-c04351o9o94cj2jln1gsejni0 \
 192.168.0.11:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

$

La ligne « warm initialized: current node (ictdgwdx9x3o52a5lzgudxrxe) is now a manager. » affichée confirme que le nœuds island1 est le nœuds manager (ou leader)  du swarm.

Ajouter un autre manager

Et oui, une nouvelle commande à apprendre ! Je suis certain qu’il existe des interfaces graphiques ou des applications web pour faire la même chose, mais ce sera pour plus tard.

Le résultat de l’initialisation du swarm (docker swarm init …) donne la marche à suivre :

To add a manager to this swarm, run 'docker swarm join-token manager' 
and follow the instructions.

Mon cluster est très réduit, et un seul manager devrait suffire.

Ajouter un nœud au swarm

Dans son immense bonté, la commande « docker swarm init » nous a indiqué comment procéder :

To add a worker to this swarm, run the following command:

docker swarm join \
 --token SWMTKN-1-092t7vsiejgmz1i60gro2ww90m8qpiz2jb51k3pxrxuxvnzyih-c04351o9o94cj2jln1gsejni0 \
 192.168.0.11:2377

Un copier coller plus tard dans une session ssh sur island2 avec le compte user2, le swarm possède deux nœuds.

nota : si cette commande ne fonctionne pas et retourne une erreur, il suffira de la retaper sur une seule ligne (sans les caractères \ )

Lister les noeuds du swarm

La commande « docker node ls »  sur le nœud manager (ou leader) affiche une liste des nœuds du swarm.

$ docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
99wkpu0uvdmyrz79yexrhyhj1 * island1 Ready Active Leader
v5bmwkqshl1qexv9nhj7a3na1 island2 Ready Active 
$

Pour le moment, seuls le nœud principal island1 et le nœud island2 apparaissent.

Le troisième nœud peut maintenant être ajouté

Retirer un nœud du swarm

Cette commande pourra être utile, pour retirer temporairement ou non un nœud du swarm : docker swarm leave

$ docker swarm leave
Node left the swarm
$

Un petit test

Tentons le classique des classiques, j’ai nommé « Hello World! », sur le nœud island1

$ docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://cloud.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/engine/userguide/
$

 

« Et ça marche ! » comme dirait Garcimore.

Évidemment, il faudra tester le swarm docker avec de vraies services et de vraies applications.

Une petite question, en passant…

« Et ça marche ! », oui, mais où ? Sur quel nœud ?

On peut supposer que Docker lancera le container d’une application ou d’un service sur le nœud le moins chargé en charge CPU, en charge mémoire, en charge réseau… mais à moins de s’y intéresser de près, et bien, à priori, on ne sait pas, et c’est ce qu’on demande à Docker Swarm.

Point d’étape

Je dispose maintenant d’une (tout) petit cluster Linux, sur lequel tourne un swarm Docker. Les tests de base  montrent que  des images Docker simples fonctionnent sans problème.

Plus haut, j’écrivais « Mon cluster est très réduit, et un seul manager devrait suffire » . En effet, avec trois workers seulement, créer plusieurs managers n’aurait que peu d’intérêt.

Pourtant, j’ai eu tort : mon manager attend toujours son autopsie. Heureusement, en détachant du swarm mes deux workers restant, et en recréant un swarm, j’ai encore de quoi expérimenter. En cas de nouvelle défaillance d’un nœud, je devrai avoir recours à des VM (machines virtuelles) hébergées sur mon PC de bureau.

Et maintenant ?

On va maintenant pouvoir commencer à utiliser le swarm pour des choses un peu plus sérieuses, par exemple des services de type NAS ou de type auto-hébergement pourrait être intéressante.

Autres billets sur le sujet

 

Creative Commons License

Catégories :Informatique Étiquettes : , ,

Linux, Docker

18 juillet 2017 3 commentaires

Mon petit cluster commence à ressembler à quelque-chose :

Bien sûr, on peut améliorer les choses :

  • passer en adressage IP V6 au lieu de l’IP V4 actuelle
  • Sécuriser le cluster, par exemple en supprimant l’accès distant à internet
  • Sécuriser l’accès nfs, pour le moment ouvert à tous vents.

L’aspect sécurité est le plus important, et les solutions sont en cours d’évaluation. Par contre l’IP V6 peut encore attendre un peu.

J’ai donc un cluster presque utilisable, mais où presque tout reste à faire pour y faire tourner des applications sans trop avoir à se casser la tête.

La solution qui m’intéresse le plus est Docker, et c’est bien le but de cette série d’articles. Commençons donc par l’installer sur chacun des noeuds.

Installation de Docker

edit du 01/07/2018 : la procédure ci-dessous est valable pour une installation sur un système Linux Debian Jessie (8.*). Pour une Debian 9, la procédure est différente. Cf. ce lien pour le détail.

Mes machines tournent sous Debian Linux, en mode headless (sans clavier, souris ni écran), en accès ssh. L’installation se fait donc via une interface chaise-clavier à coups de commandes apt sur chacun des nœuds du cluster:

  1. Activer les backports. Ceux-ci permettent d’installer des paquets en principe non prévus pour la version actuelle de Debian (8 dans mon cas, 9 pour les courageux), mais portés depuis une version plus récente de Debian.
  2. Installer quelques paquets nécessaires
  3. Installer Docker
  4. Créer un groupe unix docker et y ajouter le compte utilisateur unix
  5. Tester l’installation

J’ai utilisé les commandes suivantes (à adapter à votre cas) sous le compte root sur chacune des machines du cluster :

# Ajouter les backports au sources.list du noeud
echo '' >> /etc/apt/sources.list
echo '# Backport needed by Docker' >> /etc/apt/sources.list
echo 'deb http://ftp.debian.org/debian jessie-backports main' >> /etc/apt/sources.list

# Mettre à jour la liste des paquets disponibles
apt-get update

# Installer quelques paquets utiles
apt-get -y install apt-transport-https ca-certificates
apt-get -y install curl software-properties-common

# Ajouter la clef et le repository des paquets de Docker
curl -fsSL https://download.docker.com/linux/debian/gpg \
| apt-key add -
add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable"

# Mettre à nouveau à jour la liste des paquets disponibles 
apt-get update  # Télécharger et installer docker apt-get -y install docker-ce # Démarrer le service docker service docker start

Création du groupe docker

Ce groupe unix évite de devoir se connecter en root pour démarrer des conteneurs. Ceci se fait à nouveau sous le compte root.

# Créer le groupe docker.
groupadd docker

# Ajouter un compte (ici user1 sur le noeud island1)
usermod -aG docker user1

Test de l’installation

Si tout se passe bien, on peut passer au test classique du « hello world! »

docker run hello-world

Le résultat devrait ressembler à ceci :

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
https://cloud.docker.com/

For more examples and ideas, visit:
https://docs.docker.com/engine/userguide/

Etat des lieux

Jusqu’ici, les nœuds étaient reliés en un cluster unix où chaque machine faisait ce que l’on voulait bien y lancer au travers d’une connexion ssh.

Après les manipulations indiquées plus haut, chaque nœud fait fonctionner son instance indépendante de Docker, et il « suffit » d’y lancer des applications dans des conteneurs au fur et à mesure des besoins.

London docks c1909

« Suffit » est entre guillemets car plusieurs limites apparaissent très vite :

  • Si une machine « meurt » (carte réseau ou disque HS par exemple), les applications qui y tournaient, ainsi que leurs données, sont perdues, le temps de remplacer le matériel fautif, et de restaurer applications et données.
  • Il faut se souvenir sur quelle machine tourne chaque application …
  • … et que la machine en question soit démarrée.

Ces limites ont plusieurs solutions, dont le mode « Swarm » de Docker.

Autres billets sur le sujet :

Creative Commons License

Catégories :Informatique Étiquettes : , ,

Linux, réseau, ssh

20 juin 2017 4 commentaires

Mes trois machines sont maintenant en réseau, et chacune sait être accédée depuis les autres. Idem depuis mon PC de travail.

Se connecter sur l’une ou l’autre demande d’y connaître un compte et de pouvoir en fournir le mot de passe via une interface chaise-clavier. Outre ajouter une couche de sécurité relative, ssh permet, sous certaines conditions, de se passer de mot de passe en utilisant le principe des clefs publiques et privées.

Pour le moment, l’aspect sécurité est secondaire en ce qui concerne mon cluster, mais je changerai certainement d’avis plus tard. Un pas à la fois.

Les manipulations sont faites depuis mon PC, et les paquets ssh-server et client sont déjà installés sur les nœuds du cluster ainsi que sur le PC

Création et copie des clefs

Rien de bien compliqué, il suffit de suivre l’un des nombreux tutoriaux disponibles sur le web, en adaptant les commandes si besoin.

1 – Créer un répertoire de travail et s’y placer

mkdir ~/src/islandscluster-ssh-key
cd ~/src/islandscluster-ssh-key

2 – Créer les clefs

ssh-keygen -f  id_rsa -q -N ""

3 – Créer le fichier des clef autorisées

cp id_rsa.pub authorized_keys

4 – Ajouter la clef publique du PC de travail

cat ~/.ssh/id_rsa.pub >> authorized_keys

5 – Copier les clefs sur le noeud island1 du cluster. Le mot de passe de user1 est demandé

scp -r . user1@island1:~/.ssh

6 – Tester la connexion

$ ssh user1@island1
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Mar 11 20:05:11 2017 from 192.168.0.41
user1@island1:~$

Voilà, le premier nœud est accessible sans mot de passe depuis le PC de travail.

Il reste à  réitérer la commande scp pour les deux autres nœuds du cluster, puis à tester les accès mutuels entre eux.

Un peu de sécurité : ssh et root

Il est généralement conseillé de désactiver l’accès à une machine via ssh sous le compte root. Il suffit, sous le compte root, de modifier dans le fichier /etc/ssh/sshd_config le paramètre PermitRootLogin à no :

PermitRootLogin no

puis de redémarrer le serveur sshd sur la machine :

/etc/init.d/sshd restart

Prochaine étape

La prochaine étape consiste à installer Docker sur chacun des nœuds, puis d’activer le mode swarm. Cela mérite bien un billet ad-hoc.

 

Autres billets sur le sujet :

Creative Commons License

Catégories :Informatique Étiquettes : , ,

Linux, réseau local

6 juin 2017 4 commentaires

Mon projet de cluster avance un peu à la fois. Les marchés aux puces étant de saison, j’ai acheté à très bon prix quelques barrettes de mémoire pour gonfler deux des trois PC que je compte utiliser. Le troisième utilisant des barrettes un peu spéciales (ECC ou un truc du genre), c’est un peu plus compliqué.

Pour rappel, mon but premier est de découvrir et utiliser Docker, et notamment Docker Swarm.

Y arriver n’est pas très compliqué, si j’en crois les documentations disponibles.

Commençons par le début : l’installation du système et la connexion en réseau. Les pratiques varient en fonction de l’historique de chacun, mais ce qui suit (à part la photo)  fonctionne chez-moi.

Installation du système

Chacun des ordinateurs du futur cluster doit avoir son système d’exploitation. J’ai choisi Debian Stable. Un écran, un clavier, une clef USB d’installation (merci unetbootin) et on commence par le premier PC.

L’installation est relativement rapide, pour peu qu’on ait une connexion internet rapide. Ici, avec 200 kbps en pointe, il vaut mieux être patient.

Je n’ai installé que le système de base, plus quelques paquets bien utiles, comme gvim, ssh-client et ssh-server.

PC suivant… et PC suivant.

Après quelques tests, on peut passer à la suite.

Mise en réseau avec adresses IP fixes

Par défaut, mon routeur attribue aux ordinateurs des adresses en 192.168.0.* . C’est bien pratique en usage classique (bureautique, développement ou jeu), mais beaucoup moins pour des serveur où on aime bien savoir qui (quelle machine) est où (sur quelle adresse IP).

Un serveur DNS ou un bail DHCP très long sont deux solutions, mais je préfère fixer les choses. Mes trois machines auront pour adresses IP 192.168.0.11 à 13. J’ai donc configuré mon routeur pour que la plage d’adresses de 192.168.0.11 à 20 me soit réservée.

Reste à assigner un nom et une adresse IP à chaque machine. D’habitude, mes machines portent le nom d’une ville, mais là j’ai fait au plus court : island1, 2, et 3 .

Reste à modifier les fichier /etc/network/interfaces comme suit :

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.10.11
netmask 255.255.255.0
gateway 192.168.1.1

La ligne « address » doit être modifiée sur chaque machine : 192.168.0.11 sur la machine island1, 192.168.0.12 sur island 2 et ainsi de suite.

Chacune des machine du futur cluster devant connaître les autres, le ficheir /etc/hosts doit contenir les lignes suivantes :

192.168.0.11 island1
192.168.0.12 island2
192.168.0.13 island3

Un petit reboot ou /etc/init.D/networking restart plus loin, la partie réseau proprement dite est terminée.

On peut tester que chaque machine sait parler aux autres, par exemple avec la commande ping suivie de l’adresse IP ou du nom d’une des autres machines.

Un peu de sécurité électrique

Mes trois machines sont alimentées via une multiprise qui ne servira qu’à ça. Même si leur consommation électrique est raisonnable, il est hors de question d’y brancher un fer à repasser ou un four à micro-ondes ou même une lampe de bureau. L’idéal serait une multiprise dotée d’un disjoncteur intégré. On n’est jamais trop prudent.

Autres billets sur le sujet :

Creative Commons License

Catégories :Informatique Étiquettes : , ,

Mon utilisation de Zim pour le NaNoWriMo

11 avril 2017 Laisser un commentaire

Comme dit dans mon billet Zim Desktop, entre éditeur de texte et outliner, j’utilise maintenant Zim pour écrire mes textes. Le Camp Nanowrimo en cours confirme que c’est un bon outil d’écriture. Bien sûr, il n’est pas à cent pour cent orienté écriture comme par exemple scrivener mais avec un peu de méthode, il permet de créer un premier jet sans trop se casser la tête. En effet, tout est accessible depuis l’arborescence des pages.

Je n’utilise que deux niveaux de pages :

  • Les dossiers. Ils regroupent les documents par thèmes
  • Les documents. Ce sont mes chapitres, fiches persos, etc

Le dossier « persos »

Chaque document de ce dossier contient une « fiche perso ». Pour chaque personnage je note, outre l’identité, l’âge et une description générale, tout ce qui le définit dans le cadre du texte en cours d’écriture. Son passé, ses manies, ses craintes, et une description succinte de son rôle dans les arcs du roman.

Le dossier « ships »

Tous mes nanos, sauf le premier, sont de la science fiction. Sci-Fi ou SF pour les intimes. Le déplacements à longue distance se font par ce que d’autres appellent « vaisseaux spatiaux », mais que j’appelle des navires. C’est moins science-fictionnesque, mais ça reflète mieux ma vision « industrielle », où la marine a un rôle central et structurel dans l’expansion humaine.

Chaque navire a sa propre fiche, presque comme un personnage, où je note tout ce qui est utile – ou pas – dans le récit. Nom propre, immatriculation, taille, génération, etc.

Le dossier « Systèmes »

Mes récits prennent place dans le cadre d’un essaimage humain vers d’autres systèmes. Le problème de la propulsion est apparu assez tôt, mais une fois résolu d’une manière ou d’une autre, l’expansion a bel et bien eu lieu, de proche en proche. Les dates d’abordage, d’installation, les noms, les climats, reliefs, gravité, etc sont ajoutés au fur et à mesure des besoins.

Le dossier « Villes »

Il s’agit de la description des installations humaines prenant part aux différents arcs du récit. Je leur ai choisi des noms de cités plus ou moins réalistes : Thulée, Lutèce, Lapyuta, Europe, Brest, suivant leur emplacement ou leur utilité principale.

Le dossier « Plots »

Chacun des arcs, ou « plots » y est détaillé. Les personnages qui y participent, où, comment , dans quel but.

En exception au principe de séparation « Dossiers/Documents » ce dossier porte également mes remarques, questions, idées à propos des différents plots, les « A faire plus tard », les « nota bene », les recherches à effectuer.

Le dossier « texte »

Chaque document de ce dossier contient une unité d’écriture. Ça peut être un chapitre, le texte d’une journée lors d’un nanowrimo, des notes.

Pour rappel, le nommage des documents est important, vu que Zim les liste par ordre alphabétique. Mes documents portent donc le numéro du jour où le texte a été écrit.

D’autres dossiers ?

Tous ces dossiers ont été créés en fonction des besoins. Leurs noms et leurs contenus risquent fort d’évoluer. D’autres pourraient apparaître. Par exemple, la réécriture de « L’Arracheuse d’Âmes » et de « Blocus » ne pourra pas vraiment coller à ces dossiers car le cadre « géographique » est beaucoup plus restreint, avec l’essentiel de l’action se passant sur « l’Îlot » première installation humaine hors de la biosphère terrestre, et sur la région lilloise.

Pour conclure …

L’important n’est pas tant le découpage en dossiers que de regrouper les informations nécessaires sur le déroulement des arcs du récit.

A l’extrême, « Qui », « Quoi », et « Où », et « Texte » sont peut-être les seuls dossiers vraiment nécessaires.

… gros foutoir en vue !

Le texte est découpé par journées d’écriture, mais en fin de correction, il « vaut mieux » avoir des chapitres, et là, ça se complique. En passant de l’un – les journées d’écriture – à l’autre – les chapitres – des passages sont supprimés, déplacés, étendus, éclatés.

Gros foutoir en vue !

Creative Commons License

Catégories :Informatique Étiquettes : ,

Linux, cluster, Docker, …

4 avril 2017 5 commentaires

Hé oui, je me fais mon petit cluster perso… Ça me faisait envie depuis longtemps.

Pourquoi ? Par curiosité technique, par curiosité tout court, pour utiliser la petite pile de vieilles brêles qui traînent chez-moi, et pour voir ce que je peux en faire.

Le matériel

J’ai dans mon tas trois PC anciens, mais fonctionnels :

  • Intel Dual Core ou AMD 64×2 +/-2GHz
  • RAM 1 ou 2 GO
  • Disque 240 GO ou plus
  • Port Ethernet

La dessus, ajouter un écran, clavier, souris et lecteur DVD pour l’installation du système d’exploitation, et un switch 10/100 pour interconnecter tout ça.

Les disques vérifiés avec SmartmonTools n’ont pour le moment aucun défaut.

Le système d’exploitation

Je pourrais, ou même devrais peut-être utiliser net/free/PC BDS ou une autre variante, mais je suis plus à l’aise avec Linux, pour le moment du moins.

Debian version 8 a été préféré aux Ubuntu Server et autres distributions courantes.

Une installation minimale n’occupe qu’une toute petite partie du disque et de la mémoire. IIRC, ça passait sur un AMDx2 avec seulement 512 MO de mémoire et ça tenait largement sur un disque de 80 GO.

En plus des outils de base, j’ai installé quelques packages intéressants, à mon sens, comme vim, ssh-server et client et d’autres petites fioritures qui ne mangent pas de pain.

Que faire avec un si petit cluster ?

Vu le peu de mémoire de chaque machine, exit les applications les plus gourmandes, par exemple à base de java, exit hadoop, exit MPI, Beowulf & Co, encore que j’ai lu des articles sur des clusters à base de Raspberry pi. On se rassure comme on peut ,d’ailleurs, je vais l’appeler le « Pourquoi pas? »

Ça tombe bien, je n’ai pas besoin d’une grosse base de données, je n’ai pas de masses de données à calculer, pas de craquage de clés RSA en vue…

Par contre, j’aurais bien besoin d’un NAS, s’un serveur Mercurial, d’une machine de build et de tests, d’une petite base de données, … Le cas du NAS mis à part, tout cela tiendrait sur mon PC principal, mais outre surcharger la babasse, je n’apprendrais rien de vraiment neuf dans l’opération.

Docker, Swarm

La conteneurisation, Docker sont des sujets à la « mode » en ce moment. Pour résumer, il s’agit d’isoler les applications – base de données, serveur web, CMS, etc – dans des containers qu’il « suffit » de déployer sur l’un ou l’autre nœud d’un cluster pour les rendre disponibles. Swarm permet d’automatiser le déploiement et l’exécution des containers sur le cluster

En principe, ça devrait tenir sur mes machines. Reste à s’y mettre.

Les prochaines étapes

Pour résumer :

  • Installer Debian Linux sur les trois machines (ou nœuds) du cluster
  • Connecter les trois nœuds sur le réseau local, et y accéder par ssh
  • Installer docker sur chaque nœud
  • Sélectionner un nœud « maître » du swarm
  • Ajouter les autres nœuds au swarm

Même si ça n’a pas l’air très compliqué, ça ne va pas se faire tout seul, et il va falloir y passer du temps. Entre le camp NaNoWriMo d’Avril (je récidive), le potager (je récidive aussi), et tout le reste, on va y aller étape par étape, en documentant au fur et à mesure.

 

Autres billets sur le sujet :

(Licence Creative Commons France | Faire sans contrefaire No$ Share Alike, (c) )

Catégories :Informatique Étiquettes : , ,
%d blogueurs aiment cette page :