Archive

Archive for the ‘Solaris’ Category

Bandwidth monitor: simple but efficient

June 21st, 2010 No comments

Today, I was looking for a small tool to display interface usage on Solaris, I tried first iftop. However, after spent few hours to try to build it (including ncurses, libpcap) I finally got a binary, but it’s not working! After google for few minutes, I found Bandwitdth monitor NG. It’s a very simple software, which uses only few libraries, and works like a charm!

Here a snapshot:

Bandwith Monitor NG screenshot

And for information, ldd output :

% ldd /opt/tools/bwm-ng-0.6/bin/bwm-ng
libcurses.so.1 => /lib/libcurses.so.1
libkstat.so.1 => /lib/libkstat.so.1
libc.so.1 => /lib/libc.so.1
libm.so.2 => /lib/libm.so.2

Categories: OpenSolaris, Solaris Tags:

Quick (and dirty?) howto: Solaris IPMP with VLAN tagging

June 24th, 2009 1 comment

Here the following commands I use to create a IPMP (IP Multipathing) groups (master/slave):


#!/bin/sh

# Plumb physical interfaces
ifconfig nge1 plumb
ifconfig nge2 plumb

# Plumb 802.1q interfaces
ifconfig nge544001 plumb
ifconfig nge544002 plumb

# Configure interfaces
ifconfig nge544001 group hosts deprecated -failover up
ifconfig nge544002 group hosts deprecated -failover standby up

# Add logicial interface
ifconfig nge544001 addif 10.16.244.60 netmask 255.255.252.0 up

You can also tweak the multipath daemon by editing /etc/default/mpathd to decrease the value to detect a NIC failure.

Categories: Solaris, Sysadmin Tags:

Présentation GUSES : Métrologie des IOs

June 3rd, 2009 2 comments

Le 16 Juin, à 19h30, se tiendra à Paris, chez Sun (attention, Sun a déménagé) une présentation technique autour de Solaris 10 / OpenSolaris, sur la gestion des IOs. Cette présentation est organisé par l’association GUSES. Au programme :

  • Les différents composants : logiciel (système de fichiers), matériel
  • La gestion du cache
  • Le rôle du matériel
  • Mesure de performances et optimisation

Comme vous l’aurez sans doute remarqué, cette présentation s’adresse avant tout à des administrateurs systèmes Solaris, mais les concepts abordés sont tout aussi vrai pour les autres UNIX.

Cette présentation sera assurée par Fabrice Bacchella, administrateur système senior.

Afin d’optimiser la place, nous vous serons reconnaissant de vous inscrire.

Devenez un (open)solaris kernel hackers en 2 jours !

April 2nd, 2009 No comments

Nos chers amis polonais (très actif dans la communauté OpenSolaris) nous propose d’assister à une session de formation sur les internes du noyau OpenSolaris. Je ne peux que vous encourager à vous inscrire pour suivre ce cours qui sera je le pense excellent !

Cela se passe ici !

Categories: OpenSolaris, Solaris, Sysadmin Tags:

Bien gérer ses services sous Solaris

February 26th, 2009 3 comments

Maintenant que tout le monde utilise SMF (enfin je l’espère ! ), voici quelques informations qui pourront vous être utiles, autour du cas d’utilisation suivant :

Soit un glassfish (serveur d’application) qui – pour une obscure raison qui n’a pas d’intérêt ici – doit écouter sur les ports 80 et 443, mais ce service étant administré par un consultant métier, je ne veux en aucun cas donner le moindre droit root à cette personne, que ce soit pour démarrer ou arrêter glassfish, ou même encore pour son exécution. Cela semble difficile à réaliser au premier abord, mais SMF va nous sauver !

La gestion des privilèges

SMF permet d’assigner des priviléges (vous pouvez obtenir la liste des privilèges ainsi qu’une courte description en utilisant la commande ppriv -l -v) à un service. Pour cela, il faut éditer son manifest, puis rajouter la portion de code suivant :

<method_context user='glassfish' group='glassfish' privileges='basic,net_privaddr' />

Administration du service

Maintenant que nous avons notre glassfish qui écoute sur le port 80 et 443 sans avoir besoin du moindre processsus root, il nous reste à déléguer l’administration du service à l’utilisateur approprié. Pour cela, effectuer les modifications suivantes :


# echo 'solaris.smf.manage.glassfish:::Manage Glassfish::help=nohelp.html' >>/etc/security/auth_attr
# svccfg -s glassfish setprop general/value_authorization = astring: solaris.smf.manage.glassfish
# svccfg -s glassfish setpprop general/action_authorization = astring: solaris.smf.manage.glassfish
# svcadm refresh glassfish
# usermod -A solaris.smf.manage.glassfish glassfish

Quelques explications :

  • le fichier auth_attr définit la liste des attributs étendus qu’un utilisateur, dans ce cas, on créer un nouveau attribut que l’on nomme solaris.smf.manage.glassfish
  • Les deux lignes suivantes autorise les utilisateurs disposant de l’attribut solaris.smf.manage.glassfish à administrer le service (vous pouvez consulter la page de manuel smf_security pour avoir plus de détails)
  • Et finalement, on assigne le privilège solaris.smf.manage.glassfish à l’utilisateur glassfish

Désormais, l’utilisateur glassfish peut démarrer et éteindre le serveur d’application sans jamais disposer du moindre droit root (pas de sudo ou équivalent nécessaire). Dites merci SMF !

Categories: Security, Solaris Tags:

Présentation performances ZFS, OpenStorage, etc.

February 23rd, 2009 No comments

À l’occasion de la venue sur Paris de Roch Bourbonnais (Senior Performance Analyst ZFS/OpenStorage) Sun organise en partenariat avec l’association GUSES une soirée autour des technologies de stockages. Cette manifestation se tiendra le 18 Mars, rue de Bassano (Paris 8e) à partir de 18h30.

Au programme :

  • les nouveautés autour du stockage (Eric Bézille)
  • Performances de ZFS / OpenStorage (Roch Bourbonnais)
  • Retour d’expérience d’OpenStorage / ZFS (Frédèric Vannière)
  • Table ronde entre les communautés ZFS et MySQL

J’invite donc toutes les personnes intéressées par ZFS à venir nous retrouver lors de cette soirée.

Categories: Solaris, Sysadmin Tags:

(Open)Solaris et DSEE (LDAP)

December 15th, 2008 2 comments

Suite à ma présentation ce Mardi 9 Décembre sur LDAP et DSEE (Directory Server Enterprise Edition, le nouveau nom de iPlanet Directory Server, euh pardon, Sun Directory Server) pour l’association GUSES, voici le support de conférence. Une vidéo est également disponible, malheureusement, n’ayant pas (encore ?) de micro cravate/serre-tête le son n’est vraiment pas top, pour ne pas dire très mauvais.

Pour ceux qui n’ont pas le courage de suivre, voici (d’une manière très résumé) comment activer le support LDAP pour les comptes utilisateurs sur un Solaris.

Créer une entrée LDIF pour le profile ldapclient :

Sur le Solaris en question, activer ldapcilent via la commande suivante :

# ldapclient init -a profileName=default -a domainName=guses.org -a "proxyDN=cn=Directory Manager" -a proxyPassword=password host:port

Et finalement, un exemple PAM pour que cela fonctionne en login local, et via (fichier DIFF sur /etc/pam.conf)

23c23,24
< login auth required           pam_unix_auth.so.1
---
> login auth sufficient         pam_unix_auth.so.1
> login auth required           pam_ldap.so.1 try_first_pass
69c70,71
< other auth required           pam_unix_auth.so.1
---
> other auth sufficient         pam_unix_auth.so.1
> other auth required           pam_ldap.so.1 try_first_pass

Categories: Solaris, Sysadmin Tags: ,

JES et Solaris 10 update6, ca marche pas (directement) !

December 8th, 2008 No comments

Pour les gens qui utilisent JES 5 (même en update 1), faites attention, car il y a quelques problèmes avec l’update 6 de Solaris. En effet, Solaris 10 update installe une version plus récente du framework cacao que celle embarqué dans JES5U1, cela rend donc impossible le redémarrage de cacao après l’installation de JES6. Il y a un bug de soulever à ce propos sur opensolaris.org, néanmoins malgré le statut “Fix available” je n’ai pas réussi à trouver plus d’informations.

Pour ma part, voici mon workaround (j’utilisais JES5 pour installer uniquement DSEE 6.2, puis pour upgrade en 6.3, je ne sais donc pas si cela fonctionne pour les autres composants de JES)

  • Supprimer les paquetages cacao du système
  • Réinstaller ceux fournis dans le DVD de Solaris 10 u6
  • Désenregistrer le composant DSEE de cacao à l’aide de la commande cacao-unreg (dcssetup)
  • Enregistrer à nouveau le composant DSEE de cacao

Bien entendu, cela n’est qu’un workaround, et n’est probablement pas du tout supporté par Sun. Je vais ouvrir un ticket pour avoir plus d’infos à ce sujet.

Categories: Solaris, Sysadmin Tags: ,

MySQL pour Solaris, allo la terre ?

December 5th, 2008 2 comments

Premier billet en mode énervé (enfin, du moins en mode volontaire 🙂 mais là faut quand même pas déconner. Déjà, je sens venir la question, pourquoi tu veux MySQL sur un Solaris alors qu’il y a PostgreSQL de base sur Solaris ? La réponse est simple, parce que Sun n’est pas foutu de faire un schéma SQL pour Identity Manager, même en profitant d’une nouvelle version majeure (la 8 en l’occurence).

Bref, revenons au coeur du sujet, MySQL sur Solaris. J’ai découvert hier qu’il y avais (maintenant ?) un MySQL dans update 6, je me suis dis, chouette, je vais éviter d’installer le paquetage de merde (oui, je sais, je suis mal poli) de MySQL. Je commence à le configurer, etc, bon déjà l´absence de manifest SMF aurais du me mettre la puce a ĺ´oreille. Donc, au moment de vouloir choisir le connecteur JDBC pour ce MySQL, je pense seulement (honte sur moi) à regarder la version. Et la, je découvre donc une version 4.0.31… Je me dis bonnnnnnn, il va falloir revenir à ce paquetage de merde, finalement.

Donc, téléchargement du paquetage officiel pour Solaris depuis le site mysql.com. Installation, et déjà premier problème, le script de post-install ne s´éxecute pas correctement :


[ verifying class ]
## Executing postinstall script.
081205 11:56:52 [Warning] option 'thread_stack': unsigned value 65536 adjusted to 131072
ERROR: 1004 Can't create file '/var/tmp/installfnaGNY/#sql6559_1_0.frm' (errno: 13)
081205 11:56:52 [ERROR] Aborting

Ensuite, et là j´avoue que je trouve ca carrément énorme :


# /etc/init.d/mysql
/etc/init.d/mysql: cannot shift

Alors alors, vous avez compris ? Non ? Si je vous dis que le script commence par un shebang qui pointe sur sh ? Et bien oui, vous avez bien compris. Comme tout bon linuxien qui se respecte, le script contient plein de bashimes, mais commence par bin/sh, forcément, sous Linux bin/sh est un lien vers bash, donc ca pose pas de problème. Oui mais la on est pas sous Linux, mais sous Solaris, et bin/sh c´est un vrai SH. Allez, pour la route, une autre Linuxerie :


bash-3.00# /etc/init.d/mysql status
/etc/init.d/mysql: pidof: not found
/etc/init.d/mysql: test: argument expected

Et pour finir, une dernière bétise, le paquet s’installe dans /opt/mysql, mais… :


bash-3.00# ls /opt/mysql/
mysql

C’est vachement utile.. Et je vous parle pas des trucs qui trainent dans /usr..

En conclusion, vous l’aurez compris, je suis particulièrement remonté contre le packaging MySQL pour Solaris. En gros, si je veux un truc propre, il ne me reste qu’à recompiler.. trop génial… Merci MySQL ! Ah mais au fait, c’est pas Sun qui a racheté MySQL ?

Categories: Solaris, Sysadmin Tags: , ,

Allez plus vite, prenez le JET !

November 13th, 2008 2 comments

JET pour Jumpstart Enterprise Toolkit est un formidable outil pour gagner un temps considérable à l’installation et l’utilisation d’un serveur Jumpstart. C’est vraiment très très simple, comme le montre cet article. Néanmoins, ce dernier n’est bien que pour une première approche, je vous conseille plutôt la lecture de cette série d’article, bien plus intéressant que celui de BigAdmin qui ne fais que survoler les possibilités.

En tout cas, disposer d’un serveur JumpStart fonctionnel en quelques minutes (j’ai passé plus de temps à configurer le gabarit de ma machine qu’a installer et configurer Jumpstart) c’est vraiment plaisant.

Pour ceux qui – comme moi – se posent la question, oui JET (donc JumpStart) gère l’installation en boot ZFS (sparc et x86), un vrai régal.

Categories: Solaris, Sysadmin Tags: