Your SlideShare is downloading. ×

はじめてのSolaris

4,649
views

Published on

Solarisとは何か? …

Solarisとは何か?
Solarisを使うと何が嬉しいのか?
Solarisの初めての使い方


0 Comments
10 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,649
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
29
Comments
0
Likes
10
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. はじめてのSolaris OSC 2013 Tokyo/Fall みやざきさとる 日本OpenSolarisユーザグループ はじめてのSolaris OSC2013 Tokyo/Fall
  • 2. 自己紹介 とあるIT企業のSolaris使い Twitter: s_miyaza ストレージとかも触ってます Solarisなのは趣味です 最近Solarisのお仕事がありません… (´・ω・`) はじめてのSolaris OSC2013 Tokyo/Fall
  • 3. Agenda Solarisってしってるかい? Solarisにするとなにがうれしいの? Solarisをつかってみよう はじめてのSolaris OSC2013 Tokyo/Fall
  • 4. まずはインストールしてみよう 仮想マシンにインストールしてみる 今回はOpenIndianaを使います LiveCDでブート デバイスが対応しているか確認 インストール – 必ずroot以外のユーザを作成すること! rootではGUIログインできません はじめてのSolaris OSC2013 Tokyo/Fall
  • 5. Solarisってしってるかい? Sun Microsystems によってつくられました UNIX(SystemV)です – BSDやLinuxはUNIXライクOS 1992年にファーストリリース – SunOS から変更 – 2010年にOracleに買収 SPARCとIntel(x86)で動作します 主にエンタープライズ向け はじめてのSolaris OSC2013 Tokyo/Fall
  • 6. どっこい、Open Source Softwareです CDDL(Common Distribute and Development License)で公開されてます – OpenSolaris 〜Solaris11Expressまで – OpenIndiana もCDDL Solaris10のソースも見れました – ただし、現在は公開されてません Solaris11以降のソースは公開されてません はじめてのSolaris OSC2013 Tokyo/Fall
  • 7. Solaris10以降の公開の歴史 2011/11 2005/03 2005/05 Solaris10 Solaris11 製品版 SolarisExpress OpenSolaris 2008/05 はじめてのSolaris OSC2013 Tokyo/Fall Solaris11Express 2010/11 開発版
  • 8. OpenSolarisは派生しました SolarisExpress OpenSolaris Solaris11Express Nexenta OpenIndiana SmartOS はじめてのSolaris OSC2013 Tokyo/Fall 開発版
  • 9. OpenSolarisの仲間たち Solaris10 Solaris11 OpenIndiana SmartOS NexentaStor はじめてのSolaris OSC2013 Tokyo/Fall
  • 10. Solaris10 SMF SysV Init の置き換え 並列起動を行い、OS起動を高速化 Zone コンテナ型の仮想化機能 Solaris8/9 コンテナなども出来ます ZFS 最強のファイルシステム! Dtrace カーネルトレースツール はじめてのSolaris OSC2013 Tokyo/Fall
  • 11. Solaris11 OpenSolarisプロジェクトの正統後継者 ZFS boot 新パッケージシステム(IPS) Network仮想化 デスクトップの変更 インストーラの変更 はじめてのSolaris OSC2013 Tokyo/Fall
  • 12. OpenIndiana Solaris11 互換を目指す Solaris11Expressがベース Illumosをサポート カーネル内のクローズドソースな部分を置き換 えるプロジェクト KVMに対応 ※ http://openindiana.org/ はじめてのSolaris OSC2013 Tokyo/Fall
  • 13. SmartOS Joyent社がリリースしたクラウドプラットフォー ム用OS Joyent社はNode.jsのスポンサー KVMをポートしました OpenIndianaへ成果を提供 国内ではZ Cloudというサービスで採用 ※ http://smartos.org/ はじめてのSolaris OSC2013 Tokyo/Fall
  • 14. NexentaStor 主にNexenta System社が支援 ストレージアプライアンス向け deb/apt + Solarisカーネル(ZFS) 4.0系からカーネルをillumosに変更 まだ出てない? VMwareやCitrix Xen Server用のストレージと しても事例あり ※ http://nexentastor.org/ はじめてのSolaris OSC2013 Tokyo/Fall
  • 15. Solarisをつかうとなにがうれしいの? ZFSで万全 強力なストレージ機能COMSTAR Boot Environment で簡単なOSアップデート ネットワーク仮想化 Zoneで簡単仮想化 カーネルトレーサ DTrace はじめてのSolaris OSC2013 Tokyo/Fall
  • 16. ZFSとは 128bitファイルシステム HDDをストレージプールとして管理し、 簡単にHDD増設が可能 RAID(0,1,5,6)に相当する機能を提供 Hybrid Storage Poolで早い Copy-on-Writeによるデータ完全性の保証 セルフヒーリング スナップショット・クローン機能 重複排除、圧縮、暗号化 はじめてのSolaris OSC2013 Tokyo/Fall
  • 17. ZFSの使い方(1) ストレージプールの作成 # zpool create pool デバイス名 # ls /pool この時点で追加したストレージプール(pool)が ファイルシステムとしてマウントされます Mirror, RAIDZ(RAID5~)相当も指定できます ストレージプールへの追加 # zpool add pool デバイス名 この時点でストレージプールの容量が増えます はじめてのSolaris OSC2013 Tokyo/Fall
  • 18. ZFSの使い方(2) ZFSはツリー構造 # zfs list -r rpool/export/ NAME USED AVAIL rpool/export 66.3G 49.0G rpool/export/home 66.3G 49.0G rpool/export/home/miyazaki 345M 49.0G # zfs create rpool/export/home/test % zfs list -r rpool/export NAME USED AVAIL rpool/export 66.3G 49.0G rpool/export/home 66.3G 49.0G rpool/export/home/miyazaki 345M 49.0G rpool/export/home/test 31K 49.0G はじめてのSolaris OSC2013 Tokyo/Fall REFER 34K 33K 345M MOUNTPOINT /export /export/home /export/home/miyazaki REFER 34K 33K 345M 31K MOUNTPOINT /export /export/home /export/home/miyazaki /export/home/test
  • 19. Hybrid Storage Pool Architectureとは メモリ+SSD+HDDでストレージプールを構成 ARC – Adaptive Replacement Cache メモリ上にあるZFSのCache L2ARC – Level 2 ARC ARCからあふれた部分を保存 メモリ ZIL – ZFS Intent Log SSD 同期書き込み用ログ領域 Disk Storage Pool HDD SATA等のHDD 上記ARC/L2ARC/ZILの機能に より、高速のDiskを使用しなくても高性能を実現 はじめてのSolaris OSC2013 Tokyo/Fall 高速 中速 低速
  • 20. ARC(Adaptive Replacement Cache) ARCは、読み込み・書き込みキャッシュ ARCはメモリを使用 ARCは動的に増えていく 最大で、メインメモリの  1GBを残した全部 もしくは全体の3/4を使用 ARCからこぼれたモノはL2ARC(SSD)に 書き込まれる 1GB/s も夢じゃない はじめてのSolaris OSC2013 Tokyo/Fall
  • 21. ZIL(ZFS Intent Log)の役割 ZILは、同期書込時に使用されるログ情報 O_DSYNCつきでopen()したり、fsync()が実施されたとき など NFSは同期書き込み ARCからHDDへの書き込みは、非同期 5〜30秒に一度シーケンシャルに書き込む →HDDへ一度に書き込むので速い 同期書き込み時にも、非同期でHDDに書き込 むための機構がZIL ZILが役に立つのはクラッシュ時 クラッシュ時には、ZILから復旧する はじめてのSolaris OSC2013 Tokyo/Fall
  • 22. Copy on Writeってなんですか? ファイルを書き込むとき 必ず新規ブロックに書き込む 書き込みが全て終了するまで 既存のファイルは削除されない ファイル書き込みに失敗しても、 途中まで書き込みに成功した、 ということは発生しない はじめてのSolaris OSC2013 Tokyo/Fall
  • 23. Copy on Write(1) 最初の状態 UberBlock ポインタ ポインタ データ はじめてのSolaris OSC2013 Tokyo/Fall
  • 24. Copy on Write(2) 修正されたデータは新しいデータブロックに作 成される UberBlock ポインタ 間接ポインタ データ 新データ はじめてのSolaris OSC2013 Tokyo/Fall 新データ
  • 25. Copy on Write(3) 新しい間接ポインタが作成される UberBlock ポインタ 間接ポインタ 新ポインタ データ 新データ はじめてのSolaris OSC2013 Tokyo/Fall 新データ
  • 26. Copy on Write(4) 新しいポインタが作成される UberBlock ポインタ ポインタ データ はじめてのSolaris OSC2013 Tokyo/Fall 新ポインタ
  • 27. Copy on Write(5) 新しいUber Blockが作成される 古いブロック・ポインタは削除される 新UberBlock ポインタ ポインタ データ はじめてのSolaris OSC2013 Tokyo/Fall 新ポインタ
  • 28. セルフヒーリング ZFSは、ブロックごとにChecksumを保存 Checksum と比較することでデータの完全性を保証 セルフヒーリング 読み出したデータが異常のときは、異常データを正常 データで上書き Mirror, RAIDZ 構成のときに有効 Checksum計算にCPUが必要 CPUの暗号化支援機能を使用可能 CPUの暗号化支援機能で、CPU使用率を低下 はじめてのSolaris OSC2013 Tokyo/Fall
  • 29. スナップショットとクローン スナップショット ある時点のディスクイメージを保持する 読み込み専用 数の制限なし 指定したスナップショットにロールバックできる クローン スナップショットを書き込み可能にしたもの もとにしたスナップショットへの影響なし バックアップはスナップショット単位でとると簡単 スナップショットは削除できる はじめてのSolaris OSC2013 Tokyo/Fall
  • 30. スナップショット(1) スナップショットはReadOnly OriginalのUber Blockとポインタをコピー Snapshot UberBlock UberBlock ポインタ ポインタ ポインタ データ はじめてのSolaris OSC2013 Tokyo/Fall Original
  • 31. スナップショット(2) Originalに変更があるとブロック部とポインタ部だけが変 更される Snapshot UberBlock 新UberBlock 新データ はじめてのSolaris OSC2013 Tokyo/Fall 新データ Original
  • 32. クローン(1) クローンはReadWrite スナップショットのUber Block とポインタをコピー Snapshot UberBlock はじめてのSolaris OSC2013 Tokyo/Fall UberBlock Clone UberBlock Original
  • 33. クローン(2) Original・クローンに変更があると ブロック部とポインタ部だけが変更される Clone Snapshot UberBlock 新UberBlock new new はじめてのSolaris OSC2013 Tokyo/Fall 新UberBlock new Original
  • 34. ZFSでバックアップ バックアップはスナップショット単位 zfs send を使用 差分バックアップも可能 バックアップイメージはファイルストリーム 圧縮可能 SSHで転送可能 リダイレクトでテープに書き込み リストアもスナップショット単位 zfs receive を使用 はじめてのSolaris OSC2013 Tokyo/Fall
  • 35. 差分バックアップの例 ServerA rpool@20131019 ServerB rpool@20131019 snapshot全体のコピー はじめてのSolaris OSC2013 Tokyo/Fall
  • 36. 差分バックアップの例 ServerA ServerB rpool@20131020 rpool@20131020 rpool@20131019 rpool@20131019 snapshot差分のコピー はじめてのSolaris OSC2013 Tokyo/Fall
  • 37. 差分バックアップの例 ServerA ServerB rpool@20131021 rpool@20131021 rpool@20131020 rpool@20131020 rpool@20131019 rpool@20131019 snapshot差分のコピー はじめてのSolaris OSC2013 Tokyo/Fall
  • 38. 差分の分だけ容量を消費する 一日ごとにバックアップ →容量が増える 一週経ったら、 日単位のバックアップって要らな いよね? よし、削除しよう はじめてのSolaris OSC2013 Tokyo/Fall
  • 39. 差分バックアップの削除例 Before After rpool@20131021 rpool@20131021 rpool@20131020 rpool@20131019 rpool@20131019 snapshot差分の削除 はじめてのSolaris OSC2013 Tokyo/Fall
  • 40. 重複排除 同じデータブロックを使い回すことで ディスク容量を削減する Checksumをうまく利用する ファイルA 重複 重複 はじめてのSolaris OSC2013 Tokyo/Fall ファイルB ファイルC
  • 41. COMSTARって何者? COMSTARとは? Common Multiprotocol SCSI Target OpenSolarisのストレージフレームワーク VolumeをSCSI Targetに Volume 生HDD、ZFS Volume、ファイル 接続先 iSCSI、FC、FCoE、InfiniBandなど はじめてのSolaris OSC2013 Tokyo/Fall
  • 42. COMSTARをもっと知るには 神資料その1 「 COMSTARでiSCSI」 http://www.slideshare.net/tokuhy/comstariscsi-opensolaris201108 神資料その2 「前回の COMSTAR ネタに刺激されてしまったので、オレも COMSTAR を使ってみた。」仮) ( http://www.slideshare.net/satokaz/comstar-comstar はじめてのSolaris OSC2013 Tokyo/Fall
  • 43. ブート環境(Boot Environment) ブート可能な複数のOS環境 – x86ではgrub menuから選択可能 更新をzfs cloneベースで行う – 安全・確実 – 停止点の確保=失敗しても元に戻せる – 現在起動中のサービスを停止する必要なし Live Upgrade よりシンプル – パーティションの確保が不要 – 高いディスク利用効率 はじめてのSolaris OSC2013 Tokyo/Fall
  • 44. Network仮想化(Project Crossbow) NICの仮想化 – 仮想NIC(VNIC)、仮想Switch 帯域制御 – 帯域分割 – リソース制御 – リアルタイムの使用率・履歴 再設計されたネットワークスタック – IPoverIB などとの連携 はじめてのSolaris OSC2013 Tokyo/Fall
  • 45. NICの管理 データリンク層の管理 – – – – dladm によるデータリンク層の管理 VLAN, link-aggregation(802.3ad), ip tunnel 仮想NIC(VNIC)の作成 Vanity name=自由なNIC名の使用 IP層の管理 – ipadm を使用して、IPの管理 – IPアドレス、Netmask, broadcast, gateway, IPv4/IPv6, … – データリンクに対し、複数のIP設定 はじめてのSolaris OSC2013 Tokyo/Fall
  • 46. NICの仮想化 仮想NIC(VNIC) 物理NICもしくは仮想switchと接続 仮想switch(etherstub) 仮想NIC同士を接続する、仮想的なswitch Zone Internet Global-Zone VNIC etherstub VNIC NIC VNIC Zone VNIC VNIC はじめてのSolaris OSC2013 Tokyo/Fall Zone
  • 47. 帯域制御 帯域の分割 – VNIC、サービス、プロトコル、接続毎に優先度や 帯域制限を設定 – dladm で、VNICに帯域制限 – flowadm で、サービス、プロトコル、接続対象 リソース制御 – NIC、VNICが使用するCPUを制限 – pool設定との連携 リアルタイムに使用率・履歴の表示 – dlstat, flowstat を使用 はじめてのSolaris OSC2013 Tokyo/Fall
  • 48. 再設計化されたネットワークスタック Crossbow ハードウェアレーン       物理マシン 物理NIC switch クラシファ イア ハードウェア リング/DMA VNIC カーネルスレッド 仮想マシ ン/Zone ハードウェア リング/DMA VNIC カーネルスレッド 仮想マシ ン/Zone VNIC カーネルスレッド 仮想マシ ン/Zone ハードウェアレーン ハードウェア リング/DMA はじめてのSolaris OSC2013 Tokyo/Fall
  • 49. Zoneってなんですか? Zoneは仮想化機能です コンテナとも言ってました 完全仮想化でも準仮想化でもない LXC的な何か HyperVisorがなく、オーバーヘッドがない 親(Global Zoneといいます)からは子(NonGlobal Zone)のプロセスが見える 子から親、もしくは兄弟のプロセスは見えない CPU/MEMなどの制限が可能 はじめてのSolaris OSC2013 Tokyo/Fall
  • 50. Zoneのいいところ(1) ZFSブート環境とIPSの統合 – IPSでパッケージインストール – ブート環境をZoneで利用可能 – cloneによる容易な複製 Zone単位での管理権限委譲 – RBACを使用して、特定Zoneの管理権限を 特定ユーザに委譲可能 Legacy Zone – Solaris8, 9が動作するZone(Solaris10) – Solaris10が動作するZone(Solaris11) はじめてのSolaris OSC2013 Tokyo/Fall
  • 51. Zoneのいいところ(2) Network仮想化によりVNICを作成、 多くのZoneで使用可能 Automatic VNIC – 自動的にVNICを作成(Solaris11) ファイルシステムの使用(Solaris11) – 使用出来るファイルシステムの指定 – mount オプションの指定 – 書き込み不可のファイルシステムが可能 はじめてのSolaris OSC2013 Tokyo/Fall
  • 52. Zoneだとなにがいいのか デプロイが簡単 – zoneadm clone でOK – 領域はZFS上にあるのでクローンするだけ オーバヘッドが少ない – 複数立ち上げても大丈夫 仮想NICを使用可能 – 1ホストで複雑な構成も構築可能 はじめてのSolaris OSC2013 Tokyo/Fall
  • 53. DTraceっておいしいの? 組み込みのカーネルトレーサ Solaris10以降では入っている プローブがカーネル埋め込み プローブを複数ONにしない限り重くならない カーネル内の特定処理回数も処理時間も測定 できる 専用のスクリプト(Dスクリプト)で処理を書ける FreeBSD, MacOSX でも… はじめてのSolaris OSC2013 Tokyo/Fall
  • 54. DTrace Toolkit よく使われるものをツール化 JAVA、JavaScript、PHP、Perl、Pythonなど – 処理フロー – 処理時間の計測 ディスク書き込みの頻度の計測 System callの呼び出し頻度 などなどなど… はじめてのSolaris OSC2013 Tokyo/Fall
  • 55. Solarisを使ってみよう どこから手に入る? どうインストールするの? どうやって使うの? Linuxと何が違うの? Solaris11とOpenIndianaを例に 説明します はじめてのSolaris OSC2013 Tokyo/Fall
  • 56. どこから手に入る? Solaris10、Solaris11 – Oracleのサイトから – http://www.oracle.co.jp/ → ダウンロード – ODN(Oracle Developers Network)に登録す る必要あり OpenIndiana – OpenIndianaのサイトから – http://openindiana.org/ → ダウンロード CD版かUSB版をダウンロード はじめてのSolaris OSC2013 Tokyo/Fall
  • 57. USBイメージをUSBメモリに焼く Solaris11、OpenSolaris、OpenIndiana – usbcopy tool を使用 # /usr/bin/usbcopy <USB image path> Windows – OpenSolaris Live USB Creator を使用 http://devzone.sites.pid0.org/OpenSolaris/opensolarisliveusb-creator Linux、BSD、MacOSX – ddを駆使する 以下のページ参照(ただし英語) http://wiki.openindiana.org/oi/Installing+OpenIndiana はじめてのSolaris OSC2013 Tokyo/Fall
  • 58. インストーラ(1) ライブCDインストーラ – – – – – – CD/USBによりOS起動 レスキューディスクとしても使用可能 GUIによるインストール GPartdによるパーティション設定 ハードウェアの確認 X86版のみ はじめてのSolaris OSC2013 Tokyo/Fall
  • 59. インストーラ(2) テキストインストーラ – CUIによるインストール – SPARC用は、これで AI(Automated Install) – – – – CD/USBによるブート PXEブート・Networkブート Network経由でインストール JumpStartの代替 はじめてのSolaris OSC2013 Tokyo/Fall
  • 60. どうやってつかうの? GNOME2 を使用 – Compizも使用可能 gnu バイナリがデフォルトPATHに – POSIX準拠コマンドも使用可能 デフォルトシェルがbashに変更 OpenSoundSystem APIの採用 CUPSを印刷エンジンに採用 あんまり(一昔前の)Linuxと変わらない? はじめてのSolaris OSC2013 Tokyo/Fall
  • 61. Linuxとは違うのだよ、Linuxとは パッケージシステムIPS SMF POSIX準拠ユーザランド ZFS、NIC、BE、Zoneの管理 – 前述のとおり はじめてのSolaris OSC2013 Tokyo/Fall
  • 62. IPS(Image Packaging System) SVR4パッケージから変更 – 追加・削除・更新 – 検索 – パッチの概念が無くなる レポジトリからパッケージをインストール – – – – ネットワーク(http[s])経由でアクセス レポジトリサーバを立てることも可能 ミラーサーバー使用可能 SVR4パッケージをレポジトリにインポート可能 はじめてのSolaris OSC2013 Tokyo/Fall
  • 63. SMF(Service Management Facility) SysV Initから変更 – Solaris10から追加 並列起動 依存関係の定義 プロパティの定義が可能 サービス停止時の動作 – 有効・無効 – 再起動 – 設定変更 はじめてのSolaris OSC2013 Tokyo/Fall
  • 64. まとめ ZFSサイコー Solarisサイコー Zoneサイコー – OpenIndiana、SmartOSだとKVMも… エンタープライズレベルのOSが 個人でも使えます! はじめてのSolaris OSC2013 Tokyo/Fall
  • 65. おまけ 日本OpenSolarisユーザーグループ http://www.opensolaris.gr.jp/ ML もやってます OpenSolaris勉強会 カーネルの濃い話を聞きたい方はご参加を 次回は来週 http://connpass.com/event/2315/ はじめてのSolaris OSC2013 Tokyo/Fall
  • 66. はじめてのSolaris ご静聴ありがとうございました。 はじめてのSolaris OSC2013 Tokyo/Fall

×