sysadmin
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
sysadmin [2020/01/31 17:34] – [Gestion des utilisateurs] lpieri | sysadmin [2020/12/08 15:05] – lpieri | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Administration système ====== | ====== Administration système ====== | ||
+ | |||
+ | ===== Configuration du serveur ===== | ||
+ | |||
+ | ==== SSH ==== | ||
+ | |||
+ | < | ||
+ | vim / | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | PermitRootLogin prohibit-password # Empêche l' | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | systemctl restart sshd.service | ||
+ | </ | ||
+ | |||
+ | ==== Timezone ==== | ||
+ | |||
+ | < | ||
+ | dpkg-reconfigure tzdata | ||
+ | </ | ||
+ | |||
+ | ==== Updates ==== | ||
+ | |||
+ | < | ||
+ | apt update && apt upgrade -y | ||
+ | </ | ||
+ | |||
+ | Si demandé, conserver le fichier source. | ||
+ | |||
+ | ==== MySQL ==== | ||
+ | |||
+ | < | ||
+ | apt install mysql-server | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | mysql_secure_installation | ||
+ | |||
+ | VALIDATE PASSWORD PLUGIN No | ||
+ | |||
+ | Please set the password for root here. | ||
+ | |||
+ | New password: | ||
+ | |||
+ | Re-enter new password: | ||
+ | |||
+ | Yes pour chacune des étapes suivantes | ||
+ | </ | ||
+ | |||
+ | **Connexion à mysql par mot de passe** | ||
+ | |||
+ | < | ||
+ | mysql | ||
+ | </ | ||
+ | |||
+ | > En prenant soin de changer <hi # | ||
+ | |||
+ | < | ||
+ | mysql> ALTER USER ' | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | mysql> FLUSH PRIVILEGES; | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | mysql> exit | ||
+ | </ | ||
+ | |||
+ | ==== PHP ==== | ||
+ | |||
+ | < | ||
+ | apt install php-fpm php-mysql php-ctype php-iconv php-intl php-gd php-xml php-zip php-mbstring | ||
+ | </ | ||
+ | |||
+ | === Composer === | ||
+ | |||
+ | < | ||
+ | php -r " | ||
+ | php -r "if (hash_file(' | ||
+ | php composer-setup.php && \ | ||
+ | php -r " | ||
+ | mv composer.phar / | ||
+ | composer -v | ||
+ | </ | ||
+ | |||
+ | ==== Symfony ==== | ||
+ | |||
+ | < | ||
+ | wget https:// | ||
+ | mv ~/ | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | cp .env .env.local | ||
+ | </ | ||
+ | |||
+ | > Remplir .env.local avec les valeurs de productions | ||
+ | |||
+ | < | ||
+ | symfony composer install --no-dev --optimize-autoloader | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | symfony check: | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | symfony console doctrine: | ||
+ | symfony console doctrine: | ||
+ | symfony console doctrine: | ||
+ | </ | ||
+ | |||
+ | ==== Nginx ==== | ||
+ | |||
+ | < | ||
+ | apt install nginx | ||
+ | </ | ||
+ | |||
+ | === Virtual host === | ||
+ | |||
+ | < | ||
+ | vim / | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | server { | ||
+ | server_name mybusiness.betterb.fr; | ||
+ | root / | ||
+ | |||
+ | location / { | ||
+ | try_files $uri / | ||
+ | } | ||
+ | |||
+ | location ~ ^/ | ||
+ | fastcgi_pass unix:/ | ||
+ | fastcgi_split_path_info ^(.+\.php)(/ | ||
+ | include fastcgi_params; | ||
+ | fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; | ||
+ | fastcgi_param DOCUMENT_ROOT $realpath_root; | ||
+ | internal; | ||
+ | } | ||
+ | |||
+ | location ~ \.php$ { | ||
+ | return 404; | ||
+ | } | ||
+ | |||
+ | error_log / | ||
+ | access_log / | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | unlink / | ||
+ | ln -s / | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | nginx -t | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | systemctl reload nginx | ||
+ | </ | ||
===== Ajouter un nouvel utilisateur sur un serveur ===== | ===== Ajouter un nouvel utilisateur sur un serveur ===== | ||
Ligne 12: | Ligne 178: | ||
* Modifier/ | * Modifier/ | ||
- | Plusieurs clés peuvent être ajoutées dans le fichier authorized_keys, | + | Plusieurs clés peuvent être ajoutées dans le fichier authorized_keys, |
====== Surveillance système ====== | ====== Surveillance système ====== | ||
Ligne 18: | Ligne 184: | ||
La surveillance système est un processus qui consiste en la vérification périodique du bon fonctionnement de tous les composants des serveurs hébergeant les différents applicatifs logiciels. | La surveillance système est un processus qui consiste en la vérification périodique du bon fonctionnement de tous les composants des serveurs hébergeant les différents applicatifs logiciels. | ||
- | Ce processus a été mise en place à la suite d'un erreur liée à l' | + | Ce processus a été mis en place à la suite d'une erreur liée à l' |
- | La surveillance système est composé | + | La surveillance système est composée |
* L' | * L' | ||
* L' | * L' | ||
Ligne 31: | Ligne 197: | ||
**Une Time Series DataBase est une base de données optimisée pour le stockage de données horodatées** | **Une Time Series DataBase est une base de données optimisée pour le stockage de données horodatées** | ||
- | C'est l' | + | C'est l' |
{{: | {{: | ||
Ligne 87: | Ligne 253: | ||
===== Gestion des utilisateurs ===== | ===== Gestion des utilisateurs ===== | ||
- | Lors de l' | + | Lors de l' |
L' | L' | ||
Ligne 105: | Ligne 271: | ||
Comme expliqué plus haut, les alarmes sont gérées par AlertManager. | Comme expliqué plus haut, les alarmes sont gérées par AlertManager. | ||
- | AlertManager récupère les alertes remontées par Prometheus et les dispatche | + | AlertManager récupère les alertes remontées par Prometheus et les dispatche |
[[https:// | [[https:// | ||
- | Le fichier de configuration global d' | + | Le fichier de configuration global d' |
* les informations de connexions au serveur smtp | * les informations de connexions au serveur smtp | ||
* la liste des destinataires des alertes | * la liste des destinataires des alertes | ||
Ligne 124: | Ligne 290: | ||
* un sommaire et une description : c'est ce qu'on retrouvera dans la notification | * un sommaire et une description : c'est ce qu'on retrouvera dans la notification | ||
- | Plusieurs alertes peuvent-être configurées dans un même fichier, à condition qu' | + | Plusieurs alertes peuvent-être configurées dans un même fichier, à condition qu' |
2 alertes ont déjà été configurées : | 2 alertes ont déjà été configurées : | ||
Ligne 132: | Ligne 298: | ||
**Attention !** A chaque de fois qu'un fichier d' | **Attention !** A chaque de fois qu'un fichier d' | ||
* que les droits du fichier sont prometheus: | * que les droits du fichier sont prometheus: | ||
- | * que le fichiers | + | * que le fichier |
* relancer prometheus avec **sudo systemctl restart prometheus** | * relancer prometheus avec **sudo systemctl restart prometheus** | ||
+ | ===== Monitorer CouchDB ===== | ||
+ | |||
+ | Exporter Prometheus pour CouchDB : [[https:// | ||
+ | |||
+ | Cet exporter fonctionne exclusivement avec Docker il faut donc l' | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | Il faut ajouter l' | ||
+ | |||
+ | < | ||
+ | |||
+ | Puis se reconnecter. | ||
+ | |||
+ | L' | ||
+ | |||
+ | < | ||
+ | docker run -d --restart always -p 9984:9984 gesellix/ | ||
+ | </ | ||
+ | |||
+ | Ajouter l' | ||
+ | |||
+ | < | ||
+ | - job_name: ' | ||
+ | scrape_interval: | ||
+ | static_configs: | ||
+ | - targets: [' | ||
+ | </ | ||
+ | |||
+ | Ajouter une rêgle d' | ||
+ | |||
+ | < | ||
+ | dev@ubuntu1804-betterb-dev: | ||
+ | groups: | ||
+ | - name: couchdb.rules | ||
+ | rules: | ||
+ | - alert: CouchDbDownAlert | ||
+ | expr: absent(couchdb_httpd_up) or couchdb_https_up < 1 | ||
+ | for: 1m | ||
+ | annotations: | ||
+ | summary: CouchDB Node Down | ||
+ | </ | ||