OpenStackやOpenShiftなどのCloud製品を担当しているソリューションアーキテクトの輿水です。
宣伝になりますが、10月7日〜8日に「Containers and Cloud-Native Roadshow 2021 October」というOpenShiftのワークショップが開催されます。DEV TrackとOPS Trackに分かれており、それぞれソフトウェア開発者向け、運用管理者向けのワークショップとなっております。過去に、運用管理者向けのワークショップの内容を記事にしましたので参考にしてください。
最近と言うほど最近でもありませんが、Red Hat OpenShift Container Platform(以降OCP)の4.8がリリースされたので、OpenStackに続いて、OCPのライフサイクルについて記載します。
- OCPのライフサイクル
- OCPのアップグレード
Red Hat OpenShift Container Platformのライフサイクル
OCPはKubernetesプロジェクトと近いサイクルで提供されています。Kubernetesが概ね3ヶ月〜4ヶ月毎なので、それに追従する方針となっています。
OCPのライフサイクルはフルサポートとメンテナンスサポートで構成されます。マイナーバージョンのフルサポート期間は、2つのバージョンで1ヶ月の重複期間があるように設定されています。
- フルサポート期間:一般提供日から後続のマイナーバージョンの一般提供日の後1ヶ月(約4ヶ月)
- メンテナンスサポート期間:フルサポート終了後から後続の3マイナーバージョンの一般提供日(約5ヶ月)
一部のマイナーバージョンでは、フルサポート終了後に14ヶ月のメンテナンスサポートを提供するExtended Update Support (EUS)を提供しており、そのバージョンのサポートはフルサポート期間を合わせて約18ヶ月になります。
現時点でのEUS対象は4.6のみです。プラス14ヶ月の場合、本来は終了が2022年5月になるのですが、後続の OpenShift EUS リリースとの重複期間を延長するために、OpenShift 4.6 EUS の終了日は 2022年10月27日に延長されています。なお、次のEUSは4.10が予定されています。(クラスターの更新-[3.3. OpenShift Container Platform アップグレードチャネルおよびリリース]の[eus-4.6 チャネル]参照)
▼日時
バージョン | 一般提供開始日 | フルサポート終了日 | メンテナンスサポート終了日 |
---|---|---|---|
フルサポート中のバージョン | |||
4.8 | 2021年7月27日 | 4.9 のリリース + 1ヶ月 | 4.11 のリリース |
メンテナンスサポート中のバージョン | |||
4.7 | 2021年2月24日 | 2021年8月27日 | 4.10 のリリース |
4.6 EUS | 2020年10月27日 | 2021年3月24日 | 2022年10月27日 |
4.6 | 2020年10月27日 | 2021年3月24日 | 4.9 のリリース |
ライフサイクル終了バージョン | |||
4.5 | 2020年7月13日 | 2020年11月27日 | 2021年7月27日 |
4.4 | 2020年5月5日 | 2020年8月13日 | 2021年2月24日 |
※記載されている将来の日付はすべて概算であり、決定的なものではなく、変更される可能性があります
Red Hat OpenShift Container Platformのアップグレード
OCPはOTA (over-the-air)updateを提供しています。4.X.y→4.X.zだけでなくマイナーバージョン間のアップデート(4.X→4.Y)もWebコンソールを使用すると数クリックで更新できます。更新される内容は以下になります。
マスターノードのアップデート
- Kubernetes APIのアップデート(kube-apiserver/etcdなどのコアコンポーネント)
- クラスタ管理サービスのアップデート(PrometheusやContainer Network InterfaceなどのCluster Operator)
- ホストOS(CoreOS)のアップデート
ワーカーノードのアップデート
- kubeletやContainer Network Interfaceなどの管理対象コンポーネント
- ホストOS(CoreOS)のアップデート
Webコンソールを使用してのアップデートのイメージです。OCP4では、適切なリリースバージョンを選択できるようにチャネルという概念が導入されています。この例では、現行のバージョンは4.7.31で、アップデートのパスとしては4.7のマイナーバージョンを使い続けるチャネルと4.8にアップデートするチャネルを選択することができます。
なおOCPはKubernetesプロジェクトを追従しており、OCPの各バージョンとベースとなるKubernetesのバージョンの関係は以下のようになっております。
OCPバージョン | Kubernetesバージョン |
---|---|
フルサポート中のバージョン | |
4.8 | 1.21 |
メンテナンスサポート中のバージョン | |
4.7 | 1.20 |
4.6 EUS | 1.19 |
4.6 | 1.19 |
ライフサイクル終了バージョン | |
4.5 | 1.18 |
4.4 | 1.17 |
OCPのアップデートは、基本的は4.6→4.7→4.8のようにマイナーバージョンごとにアップデートすることが前提となっております。インフラCI/CDという観点からは適宜最新版にアップデートしていただくことが望ましいのですが、そうは言っても稼働しているプラットフォームを頻繁にアップデートするのは難しいというご意見もあるかと思います。それ故に、長期サポートのEUSが登場しております。
EUSを利用した際に、途中のバージョンを飛ばしてEUS→EUSというアップデートを行いたいという要望もあると思います。現時点で、4.6EUSから4.10EUSへのアップデートにおいて、ワーカーノードに関しては途中のバージョンをスキップしてアップデートを行える仕組みを検討しています。(ビデオの19分〜20分付近で説明)
最初にご案内したContainers and Cloud-Native Roadshowの内容にはクラスターアップデートの演習は含まれていないのですが、参加者それぞれがOCPのクラスターをひとつ専有してのワークショップなので、アップデートを行うこともできます、ただしアップデートには多少時間がかかるため、余裕があれば、という形になります。もしご興味があればお問い合わせください。