DigitalOcean | Configurer nginx sur un droplet grafana

digitalocean_logo

Dans cet article, je vais parler de comment j’ai procédé pour avoir une instance Grafana accessible depuis un nom de domaine public.


Etape 1: création du serveur

La première étape afin d’obtenir cela est de créer un droplet sur DigitalOcean.

nouveau_droplet

Une fois que vous êtes sur la page pour créer un droplet, il faut aller dans l’onglet Marketplace, puis rechercher grafana. Vous devriez avoir ceci:

nouveau_grafana

Sur le bas de la fenêtre de création, vous devrez sélectionner la grosseur du serveur, ainsi qu’un mot de passe root pour le nouveau serveur crée.

Vous pouvez aussi suivre ce lien pour créer un droplet Grafana.

Etape 2: connexion au serveur

Ensuite, une fois votre droplet crée, il faut vous connecter sur le serveur. Pour cela, il faut se retrouver dans l’onglet « Droplets » sur la gauche de l’écran et cliquer sur le nouveau droplet crée. Vous devrez voir sur le haut de l’écran l’adresse IPV4 du serveur. Récupérez cette adresse et faites cette commande dans un terminal: ssh root@adresse_IPV4. Le terminal va vous demander si vous acceptez de faire confiance à ce nouvel hôte, vous devez répondre « Yes ». Puis vous devrez saisir le mot de passe que vous avez configuré lors de la création du droplet.

Etape 3: mises à jour et installation

Une fois connecté au serveur, vous allez pouvoir configurer grafana et nginx afin d’y avoir accès depuis votre nom de domaine. Mais avant ça il faut d’abord effectuer les mises à jour des paquets et installer nginx.

Pour cela, exécutez cette premiere commande pour mettre à jour la liste des paquets: sudo apt update

Puis cette commande pour mettre à jour les paquets sur le serveur: sudo apt upgrade -y 

Enfin, cette commande pour installer nginx sur le serveur: sudo apt install nginx -y

A partir de maintenant le serveur est mis à jour et nginx est prêt à etre configuré. Une vérification de l’installation peut être effectuée en exécutant la commande systemctl status nginx qui permet de connaitre l’état de nginx. Normalement si tout s’est bien passé, vous devriez avoir quelque chose comme cela:

systemctl_status_nginx

Etape 4: configurer Grafana et Nginx

La première étape est de configurer le fichier grafana.ini qui se trouve dans /etc/grafana/ . Pour cela, faire la commande nano /etc/grafana/grafana.ini. Ensuite, editez la ligne ;domain en enlevant le ; au début de la ligne, ce qui permettra de prendre en compte le paramètre, et compléter sa valeur en y inscrivant le nom du domaine sur lequel vous souhaitez avoir Grafana accessible. Dans mon cas cette ligne affiche maintenant le resultat de: domain = grafana.cloud.fredericpinaud.fr . Puis une fois édité, tapez Ctrl+O -> yes puis Ctrl+x. Cela permettra d’enregistrer et quitter le fichier.

La deuxième étape est maintenant de configurer Nginx. L’objectif de Nginx est de faire un reverse proxy, c’est à dire qu’en appelant un nom de domaine (grafana.cloud.fredericpinaud.fr), le serveur va automatiquement rediriger l’utilisateur vers le service grafana qui est accessible sur le port 3000 du serveur.

Pour cela, il faut créer un fichier de configuration unique pour ce cas d’utilisation. Dans un premier temps il faut donc créer un fichier grafana.cloud.fredericpinaud.fr dans le dossier /etc/nginx/sites-available/ . Pour cela, il faut exécuter la commande nano /etc/nginx/sites-available/grafana.cloud.fredericpinaud.frpuis écrire ces quelques lignes:

server {
        listen 80;
        listen [::]:80;
        server_name grafana.cloud.fredericpinaud.fr www.grafana.cloud.fredericpinaud.fr;
        location / {
                proxy_pass http://localhost:3000;
                proxy_set_header Host "grafana.cloud.fredericpinaud.fr";
        }
}

Cela permet d’écouter sur le port 80 avec l’adresse grafana.cloud.fredericpinaud.fr et www.grafana.cloud.fredericpinaud.fr et de rediriger vers http://localhost:3000 .

Etape 5: configurer le nom de domaine

En effet pour que cette procédure fonctionne il est nécessaire d’avoir un nom de domaine fonctionnel. Pour cela, je vous invite à consulter un de mes articles où j’explique cela.

 

J’espère que cet article vous aura plu et vous aura permis de vous donner un peu envie de faire comme moi. En attendant je vous dis à très bientôt pour de nouveaux articles DevOps et maison connectée !

Fred’

DigitalOcean | Configurer un nom de domaine

digitalocean_logo

Dans cette article je vais vous parler de comment j’ai fais pour configurer un nom de domaine pour faire fonctionner mes services en ligne chez DigitalOcean.

J’ai personnellement déjà utilisé deux méthodes qui fonctionnent. La première est totalement manuelle, et la seconde plus automatisée.

Dans un premier temps il vous faut avoir un nom de domaine fonctionnel, je vous invite à regarder chez OVH (qui est français) ici qui vous permettra de commander un nom de domaine pour quelques euros par an. Je ne vais pas détailler comment commander un nom de domaine dans cet article, ce n’est pas l’objet. Normalement avec le lien que je vous ai donné, vous ne devriez pas avoir de difficulté à en commander un.

Première méthode: à la mano

Cette première méthode est à exécuter totalement manuellement. En effet vous allez voir dans cette partie que chacune des étapes de la configuration se fait avec vos mains. Elle peut s’appliquer pour DigitalOcean, mais également pour n’importe quel serveur disponible sur Internet avec une adresse publique.

Cette méthode consiste à créer un sous-domaine dans votre espace OVH en y donnant l’adresse IP du serveur sur lequel vous voulez etre redirigé. Pour cela, dans votre espace OVH veuillez aller dans l’onglet Domaines/votre_nom_de_domaine sur la gauche de l’écran. Puis sur la fenêtre principale, allez dans l’onglet Redirection. Cliquez sur Ajouter une redirection sur la droite de la fenêtre:

nouvelle_redirection_ovh

Ce qui vous affichera une fenêtre popup où vous serez invité à entrer les informations concernant votre redirection.

add_redirect_1_ovh_test

Cliquez sur « Suivant », ce qui vous affichera la fenêtre ci-dessous:

Sur cette fenêtre il faut cocher la case « vers un serveur OVH ou ailleurs« . Ce qui permet par la suite de pouvoir entrer l’adresse IP du serveur à rediriger.

add_redirect_2_ovh_test

Cliquez sur « Suivant », ce qui vous donnera la fenêtre suivante:
Comme indiqué précédemment, l’option « avec une adresse IP » est cochée, c’est ce que nous voulons.

add_redirect_3_ovh_test

Cliquez sur « Suivant », pour être amené à la 4e page de configuration ci-dessous:
Vous devez donc entrer l’adresse IP du serveur auquel vous souhaitez être redirigé. (l’adresse affichée dans l’exemple n’est évidemment pas bonne)

add_redirect_4_ovh_test

Cliquez sur « Suivant », pour arriver sur la dernière fenêtre de configuration ci-dessous:
Cette fenêtre n’est en fait qu’un récapitulatif de toutes les étapes de configuration précédentes.

add_redirect_5_ovh_test

Avec cette méthode vous aurez votre sous-domaine test.fredericpinaud.fr (qui est mon nom de domaine), qui sera redirigé vers l’adresse IP 10.0.0.1. Vous aurez « juste » à configurer votre serveur pour rediriger ensuite cette adresse vers votre service installé sur le serveur.

Deuxième méthode: presque automatisé

Cette méthode demande toujours de faire une sorte de redirection, à la différence que cette fois-ci cela se passe dans la catégorie « Zone DNS » de l’espace OVH. Cette procédure s’applique si vous utilisez un domaine dans la section « Networking » de DigitalOcean uniquement.

La première étape est de définir un domaine dans DigitalOcean, sur la gauche de l’écran il faut se trouver dans la section « Networking » et entrer le nom du domaine que vous allez configurer dans OVH également. Dans mon cas voici (en reprenant le même nom que dans l’exemple précédent) comment est configuré DigitalOcean:

do_test_domain_1

Ceci va générer ensuite une entrée dans DigitalOcean qui va faire pointer ce nom de domaine vers des NS propres à DigitalOcean comme ceci:

do_dns_records_test

Ce sont ces entrées, donc les valeurs présentes dans la colonne « Value » que nous allons utiliser dans OVH.

Pour la partie DigitalOcean, tout est configuré, maintenant nous allons passer à la partie OVH.

Retournez donc sur votre espace personnel OVH dans la section « Domaines/votre_nom_de_domaine » sur la gauche de l’écran, puis dans la section « Zone DNS » sur la partie centrale. Puis cliquez sur « Ajouter une entrée » sur la partie de droite de la fenêtre comme ci-dessous:

new_dns_zone_1

Ce qui vous affichera la fenêtre ci-dessous:

Sur cette nouvelle fenêtre, cliquez sur « NS« , ce qui veut dire NameServer. Cela vous permettra d’indiquer par la suite la valeur d’une des valeur indiquées dans les DNS Records de DigitalOcean que je vous ai montré précédemment.

new_dns_zone_2

Dès que vous avez cliqué sur NS, la fenêtre suivante va automatiquement s’afficher, comme ci-dessous:

new_dns_record_3

Comme vous le voyez, j’ai entré le nom du nom de domaine que j’ai entré dans DigitalOcean (test.fredericpinaud.fr), j’ai ensuite mis l’option TTL sur « Personnalisé » pour lui mettre la valeur de 1800 comme indiqué dans DigitalOcean, puis la cible est la première présente dans les DNS Records de DO.
Il faut répéter cette étape trois fois, une fois pour chaque DNS Records présente dans DigitalOcean en veillant bien à remplacer le ns1 par ns2 puis ns3.

Résultat

Maintenant que vous avez configuré votre nom de domaine, que se soit à la main pour chaque sous-domaine ou de façon plus optimisée avec la deuxième méthode, vous pouvez à présent créer des serveurs en ligne et configurer vos services pour répondre aux appels de votre nom de domaine.

Si vous avez des questions sur comment faire la suite de la configuration, n’hesitez pas à me demander. J’esseirai de faire un autre article qui présente comment ajouter des services suite à cette configuration.

En espérant que ça vous a plu ! A bientôt

Fred’

Module station météo V3

station-meteo_outBox_v3

Bonjour à tous !

Je vais aujourd’hui parler de la nouvelle version de mes modules pour l’appartement. En effet, dans des précédents articles je vous présentais une première version avec un boitier en bois, puis avec un boitier en plastique « pas terrible » puis le module extérieur avec une boite étanche. Dans cette nouvelle version, je vais vous présenter pourquoi j’ai décidé d’en créer une nouvelle, et comment je l’ai faite.

 

Lire la suite

Interface projets d’école

interface-projets-index

Bonjour à tous !

Aujourd’hui je vais vous présenter l’interface des projets faits à l’école. En effet au fur et à mesure des modules passés au sein de l’EPSI, nous avons des projets à réaliser pour les valider.

 

Pourquoi une interface pour les projets ?

J’ai décidé de créer cette interface pour rendre visible et de manière simple ces différents projets réalisés. En intégrant une courte description avec une image et le titre du projet en question, le visiteur sait exactement de quel projet il s’agit et ce qu’il faut faire pour le visualiser.

 

En image !

interface-projets-index

Comme vous pouvez le voir sur l’image ci-dessus, nous trouvons une barre de navigation avec le nom de la page (« Ecole »), puis un lien « Accueil » et un lien « A propos ». La page « Accueil » est la page montrée ci-dessus, et la page « A propos » est la page montrée ci-dessous.

interface-projets-a-propos-1

 

 

 

 

 

 

 

 

Dans cette page « A propos » vous trouverez des informations me concernant, mes liens Github, Linkedin et Twitter. Mais également les liens vers mon site internet « CV », le lien vers le blog et vers mes autres projets personnels.

Venez visiter cette interface à l’adresse suivante: ici.

Sur ce, j’en ai terminé. Si vous avez des questions concernant cette interface web, je vous laisse commenter en dessous de l’article où je serai ravi de vous répondre.

A bientôt !

 

F.

Deuxième workshop deuxième année Webemy

webemy-accueil

Bonjour à tous !

Aujourd’hui on se retrouve pour parler du deuxième workshop de deuxième année que nous avons nommés Webemy. Ce workshop devait être une plateforme de formation nouvelle génération. En effet nous devions faire en sorte de créer une plateforme (application mobile, site web, jeu, etc..) sur le thème de la formation en ligne. Mais tout cela devait être « innovant », et quand on dit innovant c’est qu’il devait y avoir un élément supplémentaire qui fait que l’utilisateur ait envie de revenir sur la plateforme.

webemy-accueil

 

Lire la suite

Premier Workshop deuxième année whichTransport

Bonjour à tous !

Dans cet article je vais vous parler de notre premier Workshop de deuxième année qui se nomme whichTransport. En effet, chaque année nous avons deux workshops. Le premier est la première semaine de rentrée, pour se remettre dans le rythme et donc être en forme pour le reste de l’année. Et le deuxième est courant le dernier mois de l’année scolaire pour terminer l’année en beauté.

Lire la suite

Interface météo

image_interface_accueil

Bonjour à tous !

Aujourd’hui je vais vous parler de mon interface web de visualisation météo. En effet, je vous ai parlé dans d’autres articles de ma station météo fait maison qui envoyait des données sur Thingspeak,et qu’ensuite je venais récupérer ces données dans une interface. Je vais donc vous parler de cette interface de visualisation de données.

Lire la suite

Recherche emploi

image_job

Bonjour à tous,

Cet article est là car étant étudiant, je recherche à me faire un peu d’argent pour, entre-autre, pouvoir m’acheter un nouvel ordinateur portable pour les cours. Tout le monde connait la situation qu’est celle d’un étudiant à plein temps. Il est absolument impossible de travailler la journée ou la nuit dans des établissements quels qu’ils soient.

C’est pour cela que je suis à la recherche d’un emploi dans mon domaine, qui est l’informatique, qui puisse s’effectuer une fois rentré chez moi le soir ou les weekends. Je recherche idéalement à faire soit du développement web (Javascript, PHP, HTML/CSS) ou de l’assistance/apprentissage de l’informatique aux personnes à domicile.

Étant donné que je suis en fin de deuxième année d’école d’ingénierie informatique à Grenoble, je pense avoir les capacités pour créer un site web avec WordPress (par exemple) ou une application web. Concernant l’apprentissage aux personnes à domicile, elle peut être faite aux enfants ou aux personnes âgées. Sur ce deuxième point, j’ai pour habitude de donner des leçons à des personnes âgées à leur apprendre comment se servir d’une tablette/ordinateur avec leurs différents outils disponibles.

 

Je vous fais confiance pour faire passer le message à vos proches ou à votre réseau professionnel.

Merci à très vite

F.