FreeBSD: poudriere cross compiling (ARM)

Poudriere permet de réaliser du cross compiling et donc de compiler des cibles d’une autre architecture. Nous allons ici prendre l’exemple d’une architecture amd64 cross-compilant vers ARM6 pour un Raspberry PI 2.

Préparation de la jail poudrière

Tout d’abord on va télécharger une image RPI2 viable depuis le miroir FreeBSD puis la décompresser

Continuer à lire

Compiler une application Android avec Jenkins sous FreeBSD

Jenkins est un outil d’intégration continue permettant de compiler et valider des applications. Il s’intègre avec diverses applications, que ce soit JAVA, C/C++ ou bien d’autres langages.

Nous allons ici étudier la compilation d’une application Android sous FreeBSD, celle-ci nécessitant un peu de tuning. Continuer à lire

[Serveur Dédié] Serveur Mail

Introduction

Dans cette article nous allons voir la mise en place d’un serveur mail utilisant OpenSMTPD comme service SMTP et Dovecot en tant que service IMAP ainsi que Roundcube comme webmail.

OpenSMTPD a été vu dans un précédent article.

Dovecot est un service permettant la mise en place de serveur imap ou pop3. Dovecot a été vu sur ce site sur ce lien.

Nous allons présenter la configuration de OpenSMTPD ainsi que celle de Dovecot puis nous détaillerons les modifications qui on été nécessaires au fonctionnement des deux services ainsi que son utilisation d’un point de vue utilisateur via le déploiement de Roundcube sur un serveur web Nginx hébergé  par FreeBSD 9.2. Continuer à lire

ZFS: remplacement de disque à chaud

ZFS permet de remplacement automatiquement des disques à chaud. Cela permet par exemple d’étendre la capacité du pool ZFS ou encore de remplacer un disque défectueux, ou encore de changer de technologie de disque (passage sur un SSD, sur une autre technologie d’IO virtuelles…)

Nous allons ici partir du principe que notre serveur possède un slot de libre (sur une VM c’est plus simple, il suffit d’ajouter le disque à chaud). Nous insérons un disque de données vierge de capacité égale (ou supérieure) dans ce slot. Il est reconnu par le système en mode hotplug (SATA, SCSI, Virtio…).

Afin de remplacer le disque, il suffit de taper la commande:

Bien sur vous pouvez choisir de changer de technologie de disque (ici une migration d’un disque ATA vers un disque virtio:

Vous pourrez ensuite vérifier l’état de la récupération avec:

S’il y a un nombre suffisant de données, vous verrez le pool passer en mode resilvering. Cela signifie qu’il copie les données du premier disque vers le second.

Voilà, vous savez désormais comment remplacer un disque dans un pool ZFS

Dans mon cas cela a permis de passer d’une technologie SATA en mode writethough à des disques Virtio en mode DirectSync, améliorant sensiblement les performances d’écriture.

Installer Gitlab sous FreeBSD

Introduction

Gitlab est un puissant outil permettant de monter une infrastructure de type github sur son infrastructure. Gitlab peut se connecter à un annuaire LDAP d’entreprise afin que les utilisateurs soient automatiquement reconnus.

En terme de fonctionnalités, Gitlab permet de créer des repositories git, forker, créer des branches, faire des commits sur HTTP(S), partager des projets entre plusieurs utilisateurs…

Nous allons ici voir comment installer Gitlab sur un serveur FreeBSD. Continuer à lire

Migration de configuration pkg

Suite à une récente mise à jour de pkgng (la version 1.2), l’ancien format de déclaration des repositories a été retiré.

Pour rappel, pour utiliser les paquets relatifs à un repository, il fallait éditer le fichier /usr/local/etc/pkg.conf et ajouter une ligne comme celle-ci:

Désormais il faut procéder utiliser deux éléments:

  • Un enregistrement SRV pour votre repository
  • Un fichier de configuration du repository spécifique

Pour l’enregistrement SRV, il vous faudra l’enregistrement suivant:

Pour la configuration, vous devrez tout d’abord créer un répertoire dédié à la configuration des repos:

Et créer un fichier de configuration pour votre repo (par exemple /usr/local/etc/pkg/repos/myrepo.conf):

Voilà, vous avez désormais un fichier de repository entièrement opérationnel !

Les miroirs pkgng de FreeBSD sont désormais disponibles

La version 10.0 de FreeBSD offrira à ce dernier un tournant dans son système de gestion de paquets binaires. Les anciens outils pkg_* seront retirés pour être remplacés définitevement par pkgng.

Depuis l’introduction de pkgng, il n’existait pas de miroir permettant de télécharger et installer ces paquets. C’est désormais chose faite. L’équipe FreeBSD a annoncé la possibilité d’utiliser des miroirs permettant de télécharger les paquets sous forme binaire.

Continuer à lire

Shibboleth (IdP): installation et retour d’expérience

Shibboleth est un système de fédération d’identités. Il permet d’authentifier des utilisateurs faisant partie d’établissements/entreprises différentes sur des applications mutualisées.

Peu présent et utile dans le secteur privé, Shibboleth est une référence en terme d’authentification dans le secteur public, au sein du ministère de l’enseignement supérieur et de la recherche. Renater, fournisseur d’accès à Internet réservé aux établissement d’enseignement supérieur et de recherche, est l’un des organismes qui l’utilise le plus.

Shibboleth est composé de plusieurs briques, notamment le Service Provider (SP, fournisseur de services) et dans notre cas le fournisseur d’identité (Identity Provider, IdP)

Continuer à lire

FreeBSD 9.2 est sorti

FreeBSD 9.2 est sorti le 30 septembre 2013.

Ce release fait suite à la version LTS 9.1 de FreeBSD et embarque un ensemble de nouveautés très intéressantes:

  • Mise à jour du driver e1000, amélioration de performances
  • Intégration de virtio dans le kernel GENERIC (x86 et amd64), permettant d’utiliser les drivers dédiés à KVM et améliorant les performances
  • Ajout du support de la commande TRIM pour les SSD
  • Ajout du support de la compression LZ4 sur les volumes ZFS, bien plus performante que LZO
  • Suppression du driver firewire du kernel GENERIC
  • Amélioration des temps de démarrage, notamment au niveau du bootloader
  • Le bootloader a été mis à jour avec un nouveau logo aux couleurs de FreeBSD
  • Amélioration des performances I/O via les unmapped I/O Continuer à lire

Monter sa poudrière pour forger son repository FreeBSD

Poudrière est un excellent outil disponible à la fois sur FreeBSD et DragonFlyBSD permettant de forger un repository pour FreeBSD/DragonFlyBSD afin de déployer rapidement un parc de serveurs ou de clients FreeBSD (en le couplant à Puppet vous serez à même de déployer très vite).

Prérequis

Poudrière requiert un pool ZFS, même si ce n’est pas obligatoire c’est fortement conseillé. Continuer à lire