jeudi 16 novembre 2017

Stackdriver installer agent sur version non supporte de Ubuntu

Je teste GCP, l'objet d'un futur post ?
Et je teste le monitoring avec Stackdriver mais de chance stackdriver ne supporte pas Ubuntu 17.04.
Impossible d'installer l'agent a moins de modifier le script d'installation : stack-install.sh

En trichant un peu, remplacer la commande lsb_release -sc par la derniere version supportee : xenial
  -local CODENAME="$(lsb_release -sc)"
  +local CODENAME="xenial"


Et le tour est joue.

lundi 13 novembre 2017

Nginx proxy pass Redis

Salut,

Un petit reverse proxy Redis avec Nginx, utile dans le cas ou votre Redis est accessible uniquement en interne

Installer nginx, compiler avec l'option --with-stream ou installer paquet nginx-extra.
Dans nginx.conf, directement au meme niveau que http{} declare le stream :

stream {
    upstream backend {
        server 10.0.0.4:6379;
    }

    server {
        listen 6379;
        proxy_pass backend;
    }
}

De cette facon on peut faire passer tout ce qu'on veut, dans ce cas Redis (tcp/6379). Facile.

mercredi 1 novembre 2017

Curl IPv6

Hello,

J'ai cherche comment curl des IPv6, aucun probleme si IPv6 est bien active depuis votre serveur.
Pour tester j'ai pris une instance chez DigitalOcean et active l'option a la creation.

Par exemple :

curl -v -g -6 "http://[2a00:1450:4001:81b::200e]
curl -g -6  [2a00:1450:4001:81b::200e]:80

<!DOCTYPE html>
<html lang=en>
  <meta charset=utf-8>
  <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">
  <title>Error 404 (Not Found)!!1</title>
  <style>
    *{margin:0;padding:0}html,code{font:15px/22px arial,sans-serif}html{background:#fff;color:#222;padding:15px}body{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}* > body{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}p{margin:11px 0 22px;overflow:hidden}ins{color:#777;text-decoration:none}a img{border:0}@media screen and (max-width:772px){body{background:none;margin-top:0;max-width:none;padding-right:0}}#logo{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}@media only screen and (min-resolution:192dpi){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}@media only screen and (-webkit-min-device-pixel-ratio:2){#logo{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}#logo{display:inline-block;height:54px;width:150px}
  </style>
  <a href=//www.google.com/><span id=logo aria-label=Google></span></a>
  <p><b>404.</b> <ins>That’s an error.</ins>
  <p>The requested URL <code>/</code> was not found on this server.  <ins>That’s all we know.</ins>

Indiquer le port apres les brackets

Encore mieux
curl -6L https://google.com
-6 pour travailler en IPv6
-v pour activer le verbose
-L pour suivre le HTTP/301

Resultat partiel :
<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="de"><head><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"><meta content="/logos/doodles/2017/hannah-hochs-128th-birthday-4907642756530176-l.png"

mercredi 23 août 2017

VMWare resize disk avec LVM

Avec VMWARE souvent, on a besoin d'etendre le disque virtuel d'une VM.
Plutot que de creer un nouveau disque, le plus simple et de resize le disque existant.

Dans la console Vcenter augmenter la taille du disque souhaite.

Puis a niveau de l'OS,il faut faire reconnaire a la VM la taille du nouveau disque, sdX etait son disque.
Pour connaitre l'emplacement du disque on peut utiliser lsscsi ou regarder les dernieres entrees de dmesg.
Pour rescan :
echo 1 > /sys/block/sdX/device/rescan

Si tout va bien, on peut faire un pvresize pour faire reconnaitre a LVM la nouvelle taille
pvresize /dev/sdX
Si tout va bien l'espace disponible apparait dans VGS et dans ce cas on peut extend le logical volume, par example :
lvextend VGname/LVname -l +100%FREE


Enfin reste a augmenter le filesystem avec simplement un resize2fs et le tour est joue.


Alternative, si on souhaite augmenter la partition d'un disque.

Dans ce cas, on rescan puis cfdisk /dev/sdX pour verifier l'espace libre du disque. Eliminer la partition a etendre, puis la recreer avec le meme type (le plus souvent 8e pour LVM), sauvegarder, partprobe pour reconnaitre la nouvelle taille de la partition. Puis suivre les meme etapes, pvresize, lvextend. 

lundi 17 juillet 2017

UFW memo

Generalement sur le serveur cloud j'utilise shorewall mais avec les Ubuntu, je teste UFW.

UFW me semble un peu trop simple et je regrette le manque de gestion par zones comme avec Shorewall, par example pour authoriser toutes les communications sur la zone local.

Mais UFW est simple et facile a gerer.
Example de commande :
  • ufw status - etat de UFW retourne l'etat disable/enable et si enable la liste des regles.
  • ufw allow port_numer - authorise un port
  • ufw allow http ou https - pour manipuler des regles
  • ufw allow from x.y.w.z to any port portnumber - pour authoriser une IP vers port specifique

Enfin la configuration est dans /etc/ufw
Dans user.rules on retourve les regles et on peut les personnaliser.

En bref UFW est simple, rapide a manier et permet de proteger votre serveur.

lundi 26 juin 2017

Elastic search


 Mes premiers pas avec Elastic Search


Pour les besoins d'un nouveau projet, j'ai monte un Elastic Search (ES) et commencer a jouer avec.
Pour verifier que les donnees etaient bien en cours de restoration, je me suis a regarder les requetes dispos.
Je copie celle que j'utilise le plus souvent.

Pour verifier l'etat du cluster. Si vous disposer seulement d'un serveur l'etat sera : Yellow
curl -XGET 'localhost:9200/_cat/health?v&pretty'

Les indices :
curl -XGET 'localhost:9200/_cat/indices?v&pretty'

Etat des serveurs
curl -XGET 'localhost:9200/_cat/nodes?v&pretty'
Etat des thread
curl -XGET 'localhost:9200/_cat/thread_pool/search?v&h=host,name,active,rejected,completed'
Finalement j'ai pris 3 serveurs chez Digital Ocean avec l'option reseau prive et cree un cluster de 3 nodes tres facilement.

Le detail dans un autre post.
A+



dimanche 16 avril 2017

Windows IIS rediriger HTTP vers HTTPS avec un exception


Comment rediriger HTTP vers HTTPS et comment faire une exception avec Internet Information Services IIS/Windows.

Tout d'abord installer le module rewrite depuis le site www.iis.net

Puis modifier le ficher web.config a la racine de votre site comme suit :

La première règle crée une exception lorsque l'url match  ^data/sys/.* mais ensuite la deuxième règle forward tout le HTTP vers le HTTPS.

De cette façon, il possible de manager son IIS et sécuriser son site.


<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<rule name="NoSSL - folder" enabled="true" stopProcessing="true">
<match url="^data/sys/.*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
</conditions>
<action type="None" />
</rule>
<rule name="Redirect to https" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

samedi 25 février 2017

Creer de la memoire swap sur des petites instances cloud

Si comme moi vous utilisez des petites instances Cloud chez Google Cloud, Digital Ocean ou autres, des petits servers a $5 avec 512Mo de ram et pas de swap. Parfois il ne reste plus assez de memoire disponible.
Par example, c'est le cas sur mon serveur : Asterisk, LAMP.

Dans ce cas le plus simple est de creer un fichier swap qui permet d'augmenter les ressources de votre serveur sans en augmenter le cout et qui en plus vous permet de profiter des performances de votre disque dur "virtuel", du SSD presque comme de la RAM.

  • fallocate -l 2G /swapfile
  • chmod 600 /swapfile
  • mkswap /swapfile
  • editer votre /etc/fstab
    • /swapfile    swap    swap    defaults    0 0
  • swapon -av
Plus rapide que de faire un dd, j'utilise fallocate pour creer un fichier swap de 2G. Puis swapon pour activer la swap et le tour est joue (comme ca vous etes sur que l'entree dans fstab est correcte).

Fini l'alerte concernant la swap et surtout un peu plus de memoire plus d'appels qui se coupe, enfin possible d'upgrader le serveur, ...