私は自分のサーバーで SmartOS を使用していますが、特に「LX ブランド ゾーン」がリリースされて以来、非常に気に入っています。これにより、ハイパーバイザーなしで、ベアメタル パフォーマンスで Linux アプリケーションを SmartOS「ゾーン」で実行できるようになります。
LXブランドのゾーンを作成するときは、プロパティを含むマニフェストファイルを作成する必要がありますkernel_version
。JoyentがWebサイトで提供している例では、kernel_versionは3.13.0に設定されています。https://wiki.smartos.org/display/DOC/LX+ブランド+ゾーン。
ただし、「本物の」Ubuntu には 3.16 カーネルが付属しています。
私の質問:
- に異なる値を指定すると
kernel_version
、SmartOS がエミュレートする Linux カーネルの機能が実際に変更されますか? それとも、カーネル バージョンを照会するときに LX ゾーンで実行されているユーザー ランド アプリに返される単なる「情報」値ですか? - 現在の SmartOS ではどのような値が
kernel_version
サポートされていますか? 執筆時点での「現在」は joyent_20150612T210440Z です。
Joyent の大量のドキュメントを徹底的にチェックし、Web で徹底的に調査しましたが、上記の質問に対する答えは見つかりませんでした。
どのような助けでも大歓迎です。
答え1
質問の両方の部分に対する答えは同じです。LX ブランド ゾーンを作成するための JSON ペイロードにリストされているカーネル バージョンは単なるテキスト文字列であり、実際には重要ではありません。これは、release
によって返される構造体の の値uname(2)
にすぎません。実際には、いずれにしても完全な捏造です。提供されるシステム コールは、報告された Linux カーネル バージョンに基づいて変更されることはありません。エミュレートされたカーネル (Linux) または実際のカーネル (SmartOS) の動作が変わることはありません。したがって、これをニーズに合わせて設定できます。
Joyent パブリック クラウドでは、エミュレートされているディストリビューション (debian-7、ubuntu-14、centos-6、docker など) に応じて、3.1 から 3.18 までの範囲の値を確認しました。