Les dernières version de SmartOS (au moins la 20141030 dispo chez SYS)apportent le support des zones lx, c’est à dire le support de binaires Linux dans une zone SmartOS. En gros, pour l’instant, on peut faire tourner une Ubuntu directement dans une zone sans passer par KVM.

Pour plus d’informations on peut voir la présentation ou les transparents de Bryan Cantrill.

Il faut passer SmartOS dans la version 20141030. Chez OVH c’est assez simple, il suffit de redémarrer (merci pour la mise à jour !).

On importe la zone

imgadm import b7493690-f019-4612-958b-bab5f844283e

et on créé le manifest correspondant

{
  "alias": "lxtest",
  "brand": "lx",
  "kernel_version": "3.13.0",
  "max_physical_memory": 2048,
  "image_uuid": "b7493690-f019-4612-958b-bab5f844283e",
  "resolvers": ["8.8.8.8","8.8.4.4"],
  "nics": [
    {
      "nic_tag": "switch0",
      "ip": "192.168.0.5",
      "netmask": "255.255.255.0",
      "gateway": "192.168.0.1",
      "allow_ip_spoofing": "1",
      "primary": "1"
    }
  ],
 "customer_metadata": {
    "root_authorized_keys": "ssh-rsa AAAAB3NzXXXXXX yubikey",
    "user-script" : "/usr/sbin/mdata-get root_authorized_keys > ~root/.ssh/authorized_keys ; /usr/sbin/mdata-get root_authorized_keys > ~admin/.ssh/authorized_keys"
  }
}

On démarre la zone

vmadm create -f lxtest.json

Et c’est tout !

Pour accèder aux binaires smartos on peut faire


export PATH=$PATH:/native/usr/bin:/native/usr/sbin:/native/sbin

Une page du wiki de SmartOS donne quelques explications.