第1章 新機能および変更点
Unbreakable Enterprise Kernelリリース3 (UEK R3)は、x86-64アーキテクチャ上のOracle Linux 6および7向けにテストを重ね、最適化されたオペレーティング・システム・カーネルのオラクル社が提供する3番目のメジャー・リリースです。 これはメインラインのLinuxカーネル・バージョン3.8.13に基づいています。
3.8.13-68リリースは、UEK R3向けの5番目の四半期更新リリースです。 このリリースには、セキュリティとバグの修正、ドライバの更新が含まれます。
オラクル社は、積極的に、アップストリーム・チェックインを監視し、クリティカルなバグおよびセキュリティの修正をUEK R3に適用しています。
UEK R3では、メインラインのLinuxカーネル・バージョンと同じバージョニング・モデルを使用します。 一部のアプリケーションでは、3.xバージョニング・スキームが認識されない可能性があります。 アプリケーションに2.6のコンテキストが必要な場合は、uname26ラッパー・コマンドを使用すると、アプリケーションを開始できます。 ただし、通常のLinuxアプリケーションでは、通常はLinuxカーネルのバージョン番号は認識されず、それによる影響もありません。
1.1 注目すべき変更点
結合ドライバへと更新され、ethtoolコマンドで結合に関して役に立つデータ(リンク・アグリゲーション速度や二重モードなど)を表示できるようになりました。
カーネルにturbostatツールが含まれるようになり、最新のx86プロセッサと併用することで、プロセッサ・トポロジに関する情報や、温度と周波数などの統計情報を提供できるようになりました。
Oracle Linux 7システムについては、P-stateドライバ(
intel_pstate
)がカーネルに組み込まれるようになり、Intel Sandy Bridge (以上の)プロセッサのデフォルト・ドライバになりました。 ただし、Oracle Sun x86システムについては、引き続きデフォルト・ドライバとしてacpi_cpufreq
が使用されますが、これは、このドライバが、これらのシステムで使用されているパワー・キャッピング(電力制限)機能をサポートしているためです。 新しいintel_pstate
カーネル・パラメータが追加されました。intel_pstate=force
設定を使用すると、強制的にintel_pstate
ドライバをOracle Sun x86システムにロードできます。Oracle Linux 6システムについては、UEKおよびRed Hat compatible kernel (RHCK)間の互換性を維持するために、UEKカーネルには
intel_pstate
ドライバが含まれていません。SHA-512ハッシュ・アルゴリズムが、インストール中のカーネル・モジュールの署名に使用できるようになりました。
NFS共有上に存在するスワップ・ファイルを使用する機能をテクノロジ・プレビューとして利用できます。 詳細は、1.4項「テクノロジ・プレビュー」を参照してください。
btrfs、ext4、xfsおよびOCFS2の各ファイル・システムのバグが修正されました。
Microsoft AzureまたはHyper-V上で動作するOracle Linuxゲストのサポートのバグが修正されました。
NFSv4のバグが修正されました。
1.2 Xenの改良点
Xen EFIのサポートが追加されました。
各種修正が行われました。
1.3 ドライバの更新
Unbreakable Enterprise Kernelでは、広範なハードウェアおよびデバイスをサポートします。 ハードウェアおよびストレージのベンダーとの密接な協力関係により、いくつかのデバイス・ドライバがオラクル社によって更新されました。
製造元 |
ドライバ |
バージョン |
説明 |
---|---|---|---|
Broadcom |
|
2.8.2 |
NetXtreme II Fibre Channel over Ethernet (FCoE)ドライバ |
Broadcom |
|
2.11.0.0 |
NetXtreme II iSCSIドライバ |
Broadcom |
|
2.2.5m |
NetXtreme II 1 Gigabitネットワーク・アダプタ・ドライバ |
Broadcom |
|
1.712.10 |
NetXtreme II 10 Gigabitネットワーク・アダプタ・ドライバ |
Broadcom |
|
2.5.20e |
NetXtreme II Convergedネットワーク・インタフェース・カード(NIC)ドライバ |
Cisco |
|
2.1.1.67 |
VIC Ethernet NICドライバ |
Emulex |
|
10.4.200.0o |
OneConnect Open-iSCSIドライバ |
Emulex |
|
0:10.6.61.0 |
LightPulse Fibre Channel SCSIドライバ |
Emulex |
|
10.4u |
OneConnect NICドライバ |
HP |
|
3.4.4-1 |
HP Smart Arrayコントローラ・ドライバ |
Intel |
i40e |
1.2.2-k |
Ethernet Connection XL710ネットワーク・ドライバ |
Intel |
|
1.0.6 |
XL710 X710 Virtual Functionネットワーク・ドライバ |
Mellanox |
|
2.1.8 |
ConnectX HCA Ethernetドライバ |
Microsoft |
|
更新済 |
Hyper-Vネットワーク・ドライバ |
Microsoft |
|
更新済 |
Hyper-V仮想ストレージ・ドライバ |
Microsoft |
|
更新済 |
Hyper-Vユーティリティ |
Microsoft |
|
更新済 |
Hyper-V VMBusドライバ |
1.4 テクノロジ・プレビュー
Unbreakable Enterprise Kernelリリース3に含まれている次の機能は、まだ開発中ですが、テストと評価の目的で使用できます。 これらの機能は本番システムで使用しないでください。
分散複製型ブロック・デバイス(DRBD)
非共有型の同時複製ブロック・デバイス(ネットワーク経由のRAID1)で、高可用性(HA)クラスタのビルディング・ブロックの役割を果たすように設計されています。 自動フェイルオーバーのためにはクラスタ・マネージャ(ペースメーカーなど)が必要です。
カーネル・モジュール署名機能
暗号署名チェックをモジュール・ロード時にモジュールに適用し、カーネルにコンパイルされた公開キー・リングに対して署名をチェックします。 GPGは暗号化の作業を行うために使用され、署名およびキーのデータの書式を決定します。
NFS over RDMAクライアント
Oracle InfiniBandスタック上でRDMAトランスポート経由のNFSの使用を可能にします。 これはTCP/IPoIBトランスポートを使用するよりも効率的です。 テクノロジ・プレビューには、NFS over RDMAサーバーのサポートや仮想化環境でのNFS over RDMAのサポートは含まれていません。 NFSバージョン3および4がサポートされています。 現在、Mellanox ConnectX-2およびConnectX-3ホスト・チャネル・アダプタ(HCA)のみがサポートされています。 これらのHCAを使用したConnectathon NFSの完全なテスト・スイートにクライアントは合格しました。 初回リリース後、サポート対象のアダプタが追加されると、リリース・ノートが更新されます。
この機能を使用する方法の詳細は、1.4.1項「NFS over RDMAクライアントの使用方法」を参照してください。
NFS共有上のスワップ・ファイル
システムがNFS共有上に存在するスワップ・ファイルを使用する機能。 スワップ・ファイルの使用の詳細は、
swapon(8)
のマニュアル・ページおよび使用しているOracle Linuxリリースの管理者ガイドを参照してください。高性能メモリー
高性能メモリー(tmem)は、システム内で十分に利用されていないメモリーを回収して、最も必要とされる場所で利用できるようにすることで、仮想化環境での物理メモリーの利用を改善するための新しい方法を提供します。 オペレーティング・システムの観点から見れば、tmemはサイズが不確定で可変の高速擬似RAMで、主として実際のRAMが不足しているときに役に立ちます。 このテクノロジとそのユースケースの詳細は、透過メモリー・プロジェクト・ページ(https://oss.oracle.com/projects/tmem/)を参照してください。
1.4.1 NFS over RDMAクライアントの使用方法
次の手順では、NFS over RDMAサーバーを有効にする方法の詳細も説明しています。 NFS over RDMAサーバーは現在UEK R3カーネルでサポートされていないので、これらは単なる例として提供されています。
RDMAデバイスをインストールし、InfiniBandを設定してIPoIBを有効にします。
Oracle Linux OFEDパッケージは次のチャネルから入手できます。
Oracle Linux 6:
ol6_x86_64_ofed_UEK
Oracle Linux 7:
ol7_x86_64_UEKR3_OFED20
RDMAデバイスが機能していることを確認します。
#
cat /sys/class/infiniband/
4: ACTIVEdriver_name
/ports/1/statedriver_name
はRDMAデバイス・ドライバです(mlx4_0
など)。物理InfiniBandインタフェースとリンクを確認します。
ibhostsやibnetdiscoverなどのコマンドを使用して、InfiniBandスイッチ経由でホストに接続できることを確認します。
NFSクライアントとNFSサーバー間の接続を確認します。
InfiniBandインタフェースの設定は
/etc/sysconfig/network-scripts/ifcfg-ib
ファイルで構成できます。N
pingを使用して接続を確認できます。 次に例を示します。
nfs-server$
ip addr add 10.196.0.101/24 dev ib0
nfs-client$ip addr add 10.196.0.102/24 dev ib0
nfs-server$ping 10.196.0.102
nfs-client$ping 10.196.0.101
NFSクライアントとサーバーに
nfs-utils
パッケージをインストールします。NFS共有を構成します。
/etc/exports
ファイルを編集します。 クライアントのIPoIBアドレスを使用して、クライアントがマウントできるようにNFSサーバーが使用可能にするディレクトリを定義します。 次に例を示します。/
export_dir
10.196.0.102(fsid=0,rw,async,insecure,no_root_squash) /export_dir
10.196.0.0/255.255.255.0(fsid=0,rw,async,insecure,no_root_squash)NFSサーバー上で、
svcrdma
カーネル・モジュールをロードし、NFSサービスを開始します。Oracle Linux 6:
#
modprobe svcrdma
#service nfs start
#echo rdma 20049 > /proc/fs/nfsd/portlist
Oracle Linux 7:
#
modprobe svcrdma
#systemctl start nfs-server
#echo rdma 20049 > /proc/fs/nfsd/portlist
注意rdma 20049
設定は、NFSサービスを再起動すると失われます。 NFSサービスを起動するたびに、これを設定する必要があります。NFSクライアント上で、
xprtrdma
カーネル・モジュールをロードし、NFSサービスを開始します。#
modprobe xprtrdma
#service nfs start
#mount -o proto=rdma,port=20049
host
:/export
/mnthost
は、IPoIBサーバーのホスト名またはIPアドレスで、export
はNFS共有の名前です。RDMA経由のマウントが正常に行われたことを確認するには、マウント・ポイントの
proto
フィールドを確認します。#
nfsstat -m
/mnt from 10.196.0.102:/export Flags: rw,relatime,vers=4.0,rsize=262144,wsize=262144,namlen=255,hard,proto=rdma,port=20049, ...別の方法の例を示します。
#
cat /proc/mounts
既知の問題
NFSサーバーを停止するには、事前にNFSクライアント上でマウント済のファイル・システムをすべてアンマウントする必要があります。 そうしないと、NFSサーバーは停止時にハングします。
1.5 互換性
Oracle LinuxではRed Hat Enterprise Linuxとのユーザー空間の互換性が維持され、これはオペレーティング・システムの下で実行されているカーネルのバージョンとは無関係です。 ユーザー空間の既存のアプリケーションは、Unbreakable Enterprise Kernelリリース3で変更なしに引き続き実行され、RHEL認定アプリケーションには証明書の更新は不要です。
Oracle Linuxチームはリリース時の互換性に関する影響を最小限に抑えるため、カーネル・モジュールに対する依存性があるハードウェアおよびソフトウェアを提供するサード・パーティ・ベンダーと緊密に協力しています。 UEK R3のカーネルABIは、最初のリリースの後のすべての更新において変更されていません。 このリリースでは、システム上でサード・パーティのカーネル・モジュールの再コンパイルを必要とするUEK R2と比較してカーネルABIに対する変更点があります。 UEK R3をインストールする前に、アプリケーション・ベンダーとそのサポート状況を確認してください。
1.6 開発用ヘッダー・パッケージ
kernel-headers
パッケージには、ユーザー領域のバイナリまたはライブラリとUEKまたはRHCK間のインタフェースを指定するCヘッダー・ファイルが用意されています。 これらのヘッダー・ファイルでは、ほとんどの標準プログラムのビルドまたはglibc
パッケージの再ビルドに必要な構造体および定数を定義します。
kernel-devel
およびkernel-uek-devel
の各パッケージには、UEKおよびRHCKに対するモジュールのビルドに必要なカーネル・ヘッダーとmakefileが用意されています。