nouveautes aout

codev

[DevBlog] Créer une solution SaaS en solo : L'infrastructure

Souvent on parle de Startup, de disruption, ou encore de FrenchTech.
Des mots qui font bien mais qui ne veulent plus trop rien dire (vous vous rappelez du 2.0 ?)

La réalité derrière ces mots à la mode est qu'il existe des dizaines d'entreprises en ligne qui tentent de vivre de leurs services innovants.
Pas besoin d'être une agence web sur Paris avec des investisseurs pour réussir à créer un SaaS (Software As A Service : un service en ligne quoi)
Je vais vous présenter plusieurs articles un peu plus techniques que d'habitude pour montrer qu'on peut créer un service en ligne seul et sans moyens colossaux. Chez Zerudi on est surtout dans le partage, alors on s'est dit que c'est le moment de vous dispenser notre expertise sur ce point. Il s'agit de faire la lumière sur des choix techniques, de trouver le bon prestataire ou bien juste de donner des idées pour les futurs services qui verront le jour.

Ce n'est certainement pas LA seule manière de faire, c'est juste comme ça que nous l'avons fait.

Et peut-être même que cela permettra aux Zerudiens de mieux comprendre l'envers du décor !

Serveurs Gandi : un choix évident

Gandi logo black
Les critères de recherche d'un prestataire pour nos serveurs étaient les suivants :
  • Une présence française mais un rayonnement international
  • Une société pérenne et solide
  • Une éthique et pas une coquille vide derrière un département marketing
  • Un savoir-faire technique indiscutable
  • Des offres de serveur tout en souplesse
Mon expérience m'a permis de tester plusieurs prestataires durant ces 15 dernières années.
J'ai pu en tester plusieurs. Et je pense avoir réduit les hébergeurs possibles à 2.
Cela nous laisse avec OVH ou Gandi.
Gandi a été choisi entre autre pour son motto "No Bullshit", son ancienneté, son back-office efficace et ses offres clairs de serveurs.

L'API pour gérer les domaines, les emails ou l'hébergement est une qualité indéniable.

Lorsque vous créez un service en ligne, vous voulez automatiser le plus de choses.
Et vous souhaitez pouvoir augmenter vos ressources selon vos besoins (le fameux Scalability).

Et pour ne rien gâcher, leur SAV n'est qu'amour.
Bon ça fait un peu post sponsorisé ce que je raconte mais non c'est l'inverse : c'est nous qui leur donnons des sacs d'argent :)
august2016 events

Automatisation et Orchestration avec Ansible

Ansible
Une fois les serveurs achetés, il faut installer vos services et les configurer correctement en fonction de vos besoins.
Avez-vous besoin d'un seul serveur ? Plusieurs ? Et vos sauvegardes ?

En démarrant votre service en ligne, difficile de prédire votre croissance : mais vous pouvez vous y préparer.
Les offres cloud permettent cela sans trop de difficultés.

Il faut aussi prévoir les pannes logicielles ou matérielles, voir même un gros problème chez votre prestataire.
Bref, vous voulez installer et configurer qu'une seule fois vos briques logicielles !
C'est là que Ansible rentre en jeux : cet outil vous permet d'automatiser l'installation des logiciels et vos scripts persos.
C'est une liste d'actions qui sont effectuées sur le serveur distant, exemple :
  • installe le serveur web
  • installe la base de données
  • mets en place la politique de sécurité
  • ajoute un certificat SSL
  • récupère les données du service
  • etc...
Que vous ayez un seul serveur ou plusieurs, c'est assurément une solution simple et terriblement efficace pour gérer votre infrastructure.
Vous ne touchez plus directement aux serveurs, mais vous manipulez "le mode d'emploi complet" de votre service.

Si demain vous voulez changer de prestataire : un clic et tout est réinstallé.
Si demain vous voulez créer un miroir du service : un clic et tout est installé.

Sauvegardes

logo 8fecb
On a vu que vos logiciels pouvaient être réinstallé à tout moment mais vous devez sauvegarder les données également pour vos utilisateurs.
Quelques principes de bases pour la sauvegarde :
  • des sauvegardes régulières (toutes les heures c'est top)
  • un emplacement différent pour vos sauvegardes (si votre prestataire possède plusieurs Datacenter, c'est parfait)
  • une vérification du bon fonctionnement des sauvegardes
De notre côté nous utilisons BorgBackup qui supporte la compression et la dé-duplication des données (on en gagne des Go lorsqu'on a plusieurs Tera de sauvegardes !)
Il est assez rapide également.
Il faut également s'assurer de pouvoir y accéder rapidement.
BorgBackup vous permet de naviguer dans les backups comme dans une arborescence de fichiers.
La documentation est vraiment bien faite. Il ne reste plus qu'à mettre en pratique.

Gérer votre croissance (via Gandi.cli)

Un service en ligne consomme vite des ressources supplémentaires en fonction de sa progression d'utilisation.
Cela peut être de la ressource de calcul, de l'espace disque ou bien de la mémoire vive.

Sur Zerudi, il s'agit principalement de faire évoluer nos capacités de stockage au fur et à mesure que les Zerudiens ajoutent des médias ou bien lorsque de nouveaux Zerudiens nous rejoignent.

Et pour nous aider dans cette tâche, on utilise un outil qui utilise l'API (les commandes qui permettent de communiquer en direct) de Gandi.
C'est un outil vraiment très important et qui nous a également séduit dans le choix de notre prestataire : l'ouverture au monde des développeurs.
Grâce à Gandi.cli nous pouvons augmenter l'espace disque de nos serveurs en 5 secondes. Littéralement.
La commande que l'on utilise ressemble à ça :
gandi disk update disk_data --size +10G
C'est vraiment simple. Il suffit ensuite de dire au serveur de prendre en compte la nouvelle taille disponible. Le serveur met à jour la "table des matières" du disque dur.
# /dev/sdx étant l'adresse de votre périphérique de stockage
resize2fs /dev/sdx
Si vous voulez rendre les choses encore plus intéressantes : vous pouvez demander à votre propre serveur de vérifier s'il atteint un seuil de capacité de stockage restant.
Si oui, il augmente tout seul de 10Go par exemple en utilisant Gandi.cli.
C'est complètement transparent pour les utilisateurs, et bigrement efficace pour vous.
Un conseil : gardez tout de même un œil sur les augmentations automatiques de ressources de stockages.
Dans un prochain article on parlera de certificats SSL, de notre solution indépendante de live, de notre solution aux paiements ou bien de tout autre chose...
N'hésitez pas à nous poser des questions !

Ces articles pourraient vous intéresser

Les 10 premiers utilisateurs

Zerudi est en route ! Différentes formations sont déjà en lignes et d'autres sont en cours.  Il est maintenant temps pour nous de proposer à 10 premières personnes de faire partie de l'aventure. Mais avant, voici quelques informations et règles : Pour …

[Coronavirus] Comment surmonter une période de crise ?

Ce mardi 17 mars 2020, à midi, notre pays est placé en situation de confinement. Ce qui signifie pour tous un arrêt total de toute activité. Une incertitude économique. Professionnelle. En 2008, une autre crise, financière celle-là, a paralysé le mon …

[Développement] Un autorépondeur de plus en plus puissant !

Vous le savez et si ça n'est pas encore le cas : l'emailing reste et restera le canal le plus puissant pour vendre en ligne. Vous pourrez tout tester, le marketing direct, c'est-à-dire qui permet de s'adresser directement au prospect, est ce qui donn …
Nouveau commentaire


Flux RSS des commentaires

nouveautes aout

codev