OpenShift 3.10のRelease Note抄訳

2018/7/30(日本時間では7/31未明)にOpenShift 3.10がリリースされました。
4.0に向けての準備的なアップデートが多いのですが、Device PluginがGA(プロダクションサポート)になったり、ストレージ関連でいくつか意欲的な機能拡張が入ったりしていますので、自分用の備忘も兼ねてまとめておきます。

稼働環境

ベースOSはRHEL7.4および7.5がサポート対象、Dockerは1.13がサポート対象です。

主なアップデート(カテゴリ別)

[TP]はTechnology Preview、すなわち、プロダクション環境ではサポートされないフィーチャーです。
開発テスト環境などの非プロダクション環境では問題なくご利用いただけます。

インストール

  • コントロールプレーン(etcd / APIServer / controllers)はstatic podとして起動するように変更された。他の実行形態はサポート対象外となった。Containerized modeはサポート対象外。
  • openshift-sdnとopenvswitchもdaemonset(コンテナ)で実行
  • systemd起動ではなくなるので、/etc/sysconfig/atomic-openshift-api などの設定ファイルは使わず、/etc/origin/master/master.envを利用してstatic podを設定する。
  • デバッグ支援のために次の便利コマンドが/usr/local/binに追加されている。
    • master-restart [etcd | api | controllers]
    • master-logs [etcd | api | controllers]
    • master-exec [etcd | api | controllers]
  • Atomic Hostはdeprecatedになった。3.11まではサポートされるが、4.0でremoveされる予定。

ストレージ

  • [TP]OpenStack ManilaがPVとして利用可能になった
  • [TP]glusterFSバックエンドのPVのリサイズが可能になった
  • [TP]CSI(Container Storage Interface)に対応
  • [TP]ローカルエフェメラルストレージの保護機能を追加(デフォルトでは無効化されている)
  • [TP]テナント駆動のストレージスナップショット取得とリストアが可能に

スケール(パフォーマンス関連)

  • バイスプラグインがGAに
  • CPUマネージャがGAになり、CPUアサインの緻密な制御が可能に
  • バイスマネージャがGAになり、特定デバイス(GPUなど)の緻密な制御が可能に
  • Huge PageがGAになり、大容量のメモリを必要とするPodにHuge Pageのアサインが可能に

ネットワーク

  • Routeの同時接続数の制限が可能に(アノテーションhaproxy.router.openshift.io/pod-concurrent-connectionsが追加)
  • KubernetesIngressオブジェクトをサポート(Ingressの作成と同期してRouteを自動生成)
  • Egress RouterでDNS名による設定が可能に
  • Serviceネットワークのアドレスレンジ拡張が可能に
  • [TP]KuryrによりOpenStackとOpenShiftのネットワークの統合をより緊密に(OpenStack側のテナントの利用など)

Master/Node

  • [TP]Deschedulerが追加され、ノード追加時のPodの偏りなどを補正することが可能に
  • [TP]Node Problem Detectorが追加され、ノードレベルの障害発生時にPodのスケジューリングを抑止することなどが可能に。カスタムプラグインによる拡張も可能。
  • Nodeの構成方法が変更され、configmapがマスター情報となった(各Nodeのnode-config.yamlに自動的に反映される)
  • [TP]デーモンレスのコンテナ管理CLIとしてPodmanが追加された

メトリクスとロギング

  • [TP]Prometheusは引き続きTPだが、バージョンが更新され、node-exporterが追加された
  • [TP]Fluentdのsyslog output plug-inのサポート

開発者向け機能

  • Service Catalog CLI(svcat)の追加
  • [TP]CLIプラグイン(ocコマンドの拡張)のサポート
  • Registryのメトリクスのエンドポイント公開(OpenShift認証統合)

Webコンソール

  • サービスカタログ検索機能の強化(タイトル/説明/tagによる重み付けに対応)
  • 複数Route存在時のデフォルトルートの指定を可能に(console.alpha.openshift.io/overview-app-route: ‘true’)
  • 空のSecretの作成を可能に
  • xterm.jsの更新によるパフォーマンス改善
  • Deploy Image画面からpull secretを直接指定可能に

セキュリティ

  • etcdに対するTLS Cipher Suiteの指定が可能に
  • [TP]コンテナ間でのPID namespaceの共有の制御が可能に

ドキュメンテーション

  • Quick Installationを削除
  • Manual Upgradeを削除
  • Installation GuideとConfiguration Guideを分離(読みやすさのため)

その他

"Notable Technical Changes"には、特に重要な変更についての技術的な解説があります。
https://docs.openshift.com/container-platform/3.10/release_notes/ocp_3_10_release_notes.html#ocp-310-notable-technical-changes