Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

トランザクショナルアップデート ― Btrfsを活用したパッケージ更新方法

453 views

Published on

5月25日にopenSUSE Leap 初のメジャーアップデート openSUSE Leap 15.0 がリリースされました。Leap 15.0 は SUSE Linux Enterprise 15 をベースとした安定版ディストリビューションで、マイナーバージョンアップを通して、長期間利用することができます。

15.0 では、基本システムのアップデートやいくつかの機能拡張がありますが、本セミナーでは、主にトランザクショナルアップデートについて説明します。

トランザクショナルアップデートは複数のパッケージアップデートを一括で行うことで、ダウンタイムを削減する新しいアップデート方法です。裏側では Btrfs のスナップショット機能を活用しています。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

トランザクショナルアップデート ― Btrfsを活用したパッケージ更新方法

  1. 1. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 1/16 トランザクショナルアップデート ― Btrfs を活用したパッケージ更新方法 OpenStack アップストリーム開発者が語る、 オープンソース開発の裏話 武山 文信、井川 征幸 日本 openSUSE ユーザ会
  2. 2. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 2/16 本日の内容 ● 10分: トランザクショナルアップデート ― Btrfs を活用したパッケージ更新方法 ● 30分: OpenStack アップストリーム開発者が語る、 オープンソース開発の裏話
  3. 3. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 3/16 みなさん って何かご存知ですか?
  4. 4. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 4/16 正しいのはどれ? (省略) ● 1. サーバールームでモフモフできるカメレオン型ガジェット ● 2. Ruby で簡単に Web アプリを作れるフレームワーク ● 3. 20年以上前にドイツで生まれた Linux ディストリビューション
  5. 5. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 5/16 正解: 3 ● 3. 20年以上前にドイツで生まれた Linux ディストリビューション – 1996 年: S.u.S.E Linux 4.2 リリース ● これ以前は Slackware + 設定ツールでした ● Q: RedHat 系ですか? Debian 系ですか? A: どちらでもありません! Slackware系でもありません ● Q: OpenSUSE ですか?openSUSE ですか? A: o は小文字です。IPhone ではなく、iPhone なのと同じです
  6. 6. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 6/16 YaST でかんたん設定 SSH からもアクセスできる TUI 版→ ● ソフトウェアのインストール ハードディスクとファイルシステムの設定 ● ネットワークの設定 ● Samba サーバーの設定 ● ユーザの追加… 詳しくは OSC Kansai/Kyoto 2015の資料を参照: http://www.slideshare.net/ftake/ok-yastlinux
  7. 7. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 7/16 2つの openSUSE Tumbleweed 常に最新 安定 新しいカーネルやライブラリを使いたい人 アプリケーションのテスト環境 有償サポートが不要な人 普段遣いのデスクトップやサーバーに
  8. 8. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 8/16 openSUSE Leap 15.0 ● SUSE Linux Enterprise 15 ベースの安定志向 ディストリビューション – 年に1回のマイナーアップデート(サービスパック) ● (15.1, 15.2, 15.3, ...) – 3年に1度程度のメジャーアップデート ● エンタープライズ版に openSUSE 独自のパッケージを追加 – デスクトップ環境: Plasma 5.12, GNOME 3.26, XFCE 4.12, MATE, LXQt, etc. ● 1つ前のバージョンは 42.3 でした – 戻ったので注意! – 42.3 は2019年6月末までサポート CentOS + Fedora のような感じ
  9. 9. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 9/16
  10. 10. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 10/16 Leap 15.0 の新機能 トランザクショナルアップデート 1/2 ● これまでのパッケージのアップデートの課題 アップデート中にシステムが一時的に不完全になる – パッケージを1個1個更新するため ● アップデート中は運用中のサービスを止める必要がある / libB.so libC.so/usr/bin/A Updated 削除済み アップデート待ち 古いファイルを参照 libB.so
  11. 11. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 11/16 Leap 15.0 の新機能 トランザクショナルアップデート 2/2 ● 方法: Btrfs のスナップショットに対してアップデートを行い、 すべてアップデートした後にルートファイルシステムを 一度に切り替える ● Btrfs スナップショット – ファイルシステムの複製 – CoW により、余計な容量を消費しない(後述) libB.so libC.so/usr/bin/A libB.so libC.so/usr/bin/A Updated Updated (1)スナップショット (2) アップデート (3) / を切り替え
  12. 12. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 12/16 スナップショット ステップ1: スナップショットを撮る ● / が複製されたように見えるが、 ストレージ上のデータは同じものを参照 – 瞬時にスナップショットが作成される ストレージ上の データ / libB.so libC.so/usr/bin/A /usr/bin/A libB.so libC.so
  13. 13. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 13/16 スナップショット ステップ2: スナップショット上のファイルを更新する ● 古いライブラリはそのままなので、サービスを止める必要なし ● CoW: Copy on Write – 書き込み時にファイルのデータを複製 ストレージ上の データ / libB.so libC.so/usr/bin/A 実行中 /usr/bin/A libB.so libC.so Updated Updated 古いファイル
  14. 14. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 14/16 ステップ3: / を入れ替える ● 再起動し、更新したスナップショットを / としてマウントする ● 前のバージョンにロールバックも可能 / ストレージ上の データ スナップショット 古い (/) libB.so libC.so/usr/bin/A /usr/bin/A libB.so libC.so Updated Updated
  15. 15. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 15/16 その他の新機能は… ● コミックマーケットC94で頒布 ● 内容 – openSUSE Leap 15.0 – Portus で Docker レジストリ – openSUSE で OneDirve を使う – 小説 – Web サイトのパフォーマンス分析 ● ブースで販売中 ● openSUSE mini Summit の資料もぜ ひチェックしてみて下さい – https://www.slideshare.net/ftake New!
  16. 16. 2018/10/28トランザクショナルアップデート― Btrfs を活用したパッケージ更新 16/16 次は OpenStack アップストリーム開発者が語る、 オープンソース開発の裏話

×