smart os入門

28
SmartOS入門 2015.09.26 JapanOpenSolarisUsersGroup Sakaue (id:nslope) 第8回 コンテナ型仮想化の情報交換会

Upload: noriyasu-sakaue

Post on 24-Jan-2017

1.490 views

Category:

Internet


0 download

TRANSCRIPT

SmartOS入門

2015.09.26

JapanOpenSolarisUsersGroup

Sakaue (id:nslope)

第8回 コンテナ型仮想化の情報交換会

アジェンダ

• 自己紹介

• SmartOSの概要

• インストール方法の紹介

• デモ

※ dockerイメージのデモについて追記(2015/10/07)

自己紹介

• Twitter id: nslope

SmartOSについて

• Joyent社が開発しているクラウド用OS。コンテナ/仮想マシンに特化。 • https://smartos.org/

• 2週間毎にリリース

• https://download.joyent.com/pub/iso/

• KernelにOpenSolarisから派生したillumosを使用

OpenSolarisからの派生(2011年頃)

OpenSolaris Solaris11Express

SolarisExpess

開発版

OpenIndiana

NexentaStor

SmartOS

illumos

派生 etc・・・

サンマイクロシステムズ 買収

illumos Project

• http://wiki.illumos.org/

• ディストリビューションではなくカーネル

• illumosの先頭は小文字(Illumosとlllumosが見分けがつかないから)

• OpenSolarisのカーネルを完全なオープンソースにすることが目標

OpenSolarisからの派生(2015年現在)

Solaris11

OpenIndiana

NexentaStor

SmartOS

illumos

etc・・・ OmniOS

SmartOSについて

• SmartOSで使用できる仮想環境は主に3つ • Naitiv Zone (通常のコンテナ)

• Solaris Zoneを元にしたコンテナ • パッケージ管理にpkgsrcを採用

• LX Branded Zone(Linuxコンテナ) • SmartOS上でLinuxアプリケーションを使用するためのコン

テナ • Dockerイメージの実行も可能

• KVM

• 省略します

Z Cloudについて

• 2015年10月でサービス終了 • ・・・お疲れさまでした。

インストール方法と注意点

• https://download.joyent.com/pub/iso/ • iso,USB,vmware,PXEのイメージを配布

• Boot/Kernel部分はインストールされない

Presentation Title

インストール(VirtualBox)

タイプは「Solaris」、バージョンは「Oracle Solaris 11(64bit)」を選択

Presentation Title

インストール(VirtualBox)

Isoイメージをアタッチして起動

Presentation Title

インストール(VirtualBox)

説明などを読みつつエンター

Presentation Title

インストール(VirtualBox)

IPアドレス、ネットマスクを入力(もしくはDHCP)

Presentation Title

インストール(VirtualBox)

デフォルトゲートウェイを入力

Presentation Title

インストール(VirtualBox)

DNS、NTPサーバを入力

Presentation Title

インストール(VirtualBox)

ZFSの構成を選択

Presentation Title

インストール(VirtualBox)

ホスト名、rootパスワードを入力

Presentation Title

インストール(VirtualBox)

設定を確認してインストール

Presentation Title

インストール(VirtualBox)

完了後リブート(isoは外さない!)

Presentation Title

デモ

• デモ1(ノーマルなコンテナ) • イメージのインポート • Zoneの作成 • パッケージのインストール • メモリの追加 • 参考

• http://wiki.smartos.org/display/DOC/How+to+create+a+zone+%28+OS+virtualized+machine+%29+in+SmartOS

• デモ2(dockerコンテナ)

• イメージのインポート • Zoneの作成

イメージのインポート

• イメージのリスト # imgadm avail

• イメージのインポート # imgadm import 5c7d0d24-3475-11e5-8e67-27953a8b237e

マニフェストの作成

• マニフェストの作成 # cat zone01.json { "brand": "joyent", “image_uuid": "5c7d0d24-3475-11e5-8e67-27953a8b237e", "alias": "zone01", "hostname": "zone01", "max_physical_memory": 512, "quota": 20, "resolvers": ["8.8.8.8"], "nics": [ { "nic_tag": "admin", "ip": "198.18.253.101", "netmask": "255.255.255.0", "gateway": "198.18.253.254", "vlan_id": "253", "primary" : true }] }

Zoneの作成

• 作成 # vmadm create –f zone01.json

• Zoneの情報 # vmadm list UUID TYPE RAM STATE ALIAS 46c93d1d-b7a8-40a6-bff1-8bc5aa92560c OS 512 running zone01

• ログイン(コンソール) # vmadm console 46c93d1d-b7a8-40a6-bff1-8bc5aa92560c # zlogin –C console 46c93d1d-b7a8-40a6-bff1-8bc5aa92560c

パッケージのインストール

• インストール済みパッケージのリスト # pkgin list

• インストール可能パッケージのリスト # pkgin avail

• パッケージのインストール # pkgin install nginx

イメージのインポート

• dockerのソースを追加 # imgadm source --add-docker-hub

• イメージのインポート # imgadm import wordpress

マニフェストの作成

• マニフェストの作成 # cat zone02.json { "brand": "lx", “image_uuid": "233750c3-9cb7-4c79-7d51-3156baf45141", "alias": "zone02", "hostname": "zone02", "max_physical_memory": 512, "quota": 20, "resolvers": ["8.8.8.8"], "nics": [ { "nic_tag": "admin", "ip": "198.18.253.102", "netmask": "255.255.255.0", "gateway": "198.18.253.254", "vlan_id": "253", "primary" : true }], "kernel_version": "3.13.0" }

※ Linuxコンテナを使用する場合は、 brandの指定を”lx”とし、 kernel_versionの指定が必要になります

Zoneの作成

• 作成 # vmadm create –f zone.json

• Zoneの情報 # vmadm list UUID TYPE RAM STATE ALIAS b529cad4-3730-43da-b74f-0eebbdbdb824 LX 512 provisioning zone02

• ログイン(コンソール) # zlogin 46c93d1d-b7a8-40a6-bff1-8bc5aa92560c # mv /var/svc/provisioning /var/svc/provision_success

※このままだとタイムアウトします

※ /var/svc/provisioning をリネームすると成功します