青木です。

> ここで、
>
> zone 'zone-ocnipv6': WARNING: The zone.cpu-shares rctl is set but
> zone 'zone-ocnipv6': FSS is not the default scheduling class for
> zone 'zone-ocnipv6': this zone.  FSS will be used for processes
> zone 'zone-ocnipv6': in the zone but to get the full benefit of FSS,
> zone 'zone-ocnipv6': it should be the default scheduling class.
> zone 'zone-ocnipv6': See dispadmin(1M) for more details.
>
> という警告が出るので、きっと、上記の zonecfg でなんか余計なことをしたに
> 違いないのです。

余計なことは何もされていないですね。
メッセージどおりと言ってしまえばそれまでですが、zoneプロパティに
zone.cpu-shares rctl が定義されているにもかかわらず、デフォルトの
スケジューリングクラスとしてFSSが設定されていないので、ちゃんと
動作しませんよ!というメッセージです。

ほっといてもいいんですが、グローバルゾーンでデフォルトスケジューリングクラスに
FSSを設定してあげれば、メッセージそのものは治まります。

<参考>
Docs
http://download.oracle.com/docs/cd/E19253-01/819-0385/gekhp/index.html
やっぱりSunがスキ!(ブログタイトルは変わっていないのねwww)
http://blogs.oracle.com/yappri/entry/dispadmin
Education 原田先生のサイト
http://solaris-user.com/solaris10_zone/zone_fss_demo.html

# スケジューリングクラスって何?とか、FSS の効用とかって、
# 既にSolaris Internals な勉強会の方で通過してしまったでしょうか?


あおき@

2011年9月5日11:18 NAKAJI Hiroyuki <[email protected]>:
> 中治@鳥取です。
>
> 先日の勉強会でヒントを得た気がしたので、おうちルータで、さらに、
>
>  ○ OCN の IPv6 トンネル接続サービスを使った IPv6 ルータ
>     http://www.ocn.ne.jp/business/ipv6/tunnel/
>
> までさせちゃおう作戦を決行しました。あらすじは以下の通りです。
> 誤りや改善点の指摘は歓迎します。
>
> 1. 準備
>
> o OCNにトンネル接続サービスを申し込む
>  - トンネルのこっち側は 60.32.13.198、あっち側は 61.207.9.252
>  - 使える IPv6 アドレスは 2001:380:14b::/48
>
> 2. トンネル用の仮想環境を作る
>
>   最初、FreeBSD の jail を使おうとしたが、そのままでは tunnel を作れな
>   いようなので Solaris Zone にした。
>
> 2.1 Global Zone で仮想ネットワークインターフェース作成
>
> global# dladm create-vnic -l rge0 vnic0
>
> global# dladm show-link
> LINK        CLASS     MTU    STATE    BRIDGE     OVER
> bge0        phys      1500   up       --         --
> rge0        phys      1500   up       --         --
> e1000g0     phys      1500   up       --         --
> vnic0       vnic      1500   up       --         rge0
>
> 2.2 zone 作成
>
> global# zfs create rpool/export/home/zone-ocnipv6
> global# zonecfg -z zone-ocnipv6
> zonecfg:zone-ocnipv6> info
> zonename: zone-ocnipv6
> zonepath: /export/home/zone-ocnipv6
> brand: ipkg
> autoboot: true
> bootargs:
> pool:
> limitpriv:
> scheduling-class:
> ip-type: exclusive
> hostid:
> fs-allowed:
> [cpu-shares: 2]
> net:
>        address not specified
>        allowed-address not specified
>        physical: vnic0
>        defrouter not specified
> capped-memory:
>        physical: 512M
>        [swap: 1G]
> rctl:
>        name: zone.max-swap
>        value: (priv=privileged,limit=1073741824,action=deny)
> rctl:
>        name: zone.cpu-shares
>        value: (priv=privileged,limit=2,action=none)
>
> (たぶん、cpu-shares 以下は余計)
>
> 2.3 zone に Solaris 環境をインストール
>
> global# zoneadm -z zone-ocnipv6 install
>
> 2.4 zone を起動
>
> global# zoneadm -z zone-ocnipv6 boot
>
> ここで、
>
> zone 'zone-ocnipv6': WARNING: The zone.cpu-shares rctl is set but
> zone 'zone-ocnipv6': FSS is not the default scheduling class for
> zone 'zone-ocnipv6': this zone.  FSS will be used for processes
> zone 'zone-ocnipv6': in the zone but to get the full benefit of FSS,
> zone 'zone-ocnipv6': it should be the default scheduling class.
> zone 'zone-ocnipv6': See dispadmin(1M) for more details.
>
> という警告が出るので、きっと、上記の zonecfg でなんか余計なことをしたに
> 違いないのです。
>
> 3. zone-ocnipv6 でネットワークの設定
>
> 3.1 vnic0 の設定
>
> zone# ipadm create-if vnic0
> zone# ipadm create-addr -T static -a 60.32.13.198/29 vnic0/v4
> zone# ipadm create-addr -T addrconf vnic0/v6
> zone# ipadm create-addr -T static -a 2001:380:14b::3/64 vnic0/v6add
>
> 3.2 トンネルの設定
>
> 3.3 IPv4 でトンネルを作る
>
> zone# dladm create-iptun -T ipv4 -a local=60.32.13.198,remote=61.207.9.252 
> tunnel0
>
> 3.4 できたトンネルにリンクローカルアドレスを割り当ててもらう
>
> zone# ipadm create-addr -T addrconf tunnel0/v6
>
> 3.5 確認
>
> zone# dladm show-link
> LINK        CLASS     MTU    STATE    BRIDGE     OVER
> vnic0       vnic      1500   up       --         ?
> tunnel0     iptun     1480   up       --         --
>
> zone# ipadm show-addr
> ADDROBJ           TYPE     STATE        ADDR
> lo0/v4            static   ok           127.0.0.1/8
> vnic0/v4          static   ok           60.32.13.198/29
> lo0/v6            static   ok           ::1/128
> vnic0/v6          addrconf ok           fe80::8:20ff:fefe:30aa/10
> vnic0/v6add       static   ok           2001:380:14b::3/64
> vnic0/?           addrconf ok           2001:380:14b:0:8:20ff:fefe:30aa/64
> tunnel0/v6        addrconf ok           fe80::3c20:dc6->fe80::3dcf:9fc
>
> 3.6 デフォルトルートの設定(不要かも…)
>
> zone# route -p add -inet6 default fe80::3dcf:9fc
>
> 4. IPv6 ルータとしての設定
>
> 4.1 routeadm コマンドで、zone-ocnipv6 で ipv6-forwarding と ipv6-routing
>    を有効にする
>
> zone# routeadm -e ipv6-forwarding -u
> zone# routeadm -e ipv6-routing -u
> zone# routeadm
>              Configuration   Current              Current
>                     Option   Configuration        System State
> ---------------------------------------------------------------
>               IPv4 routing   enabled              enabled
>               IPv6 routing   enabled              enabled
>            IPv4 forwarding   disabled             disabled
>            IPv6 forwarding   enabled              enabled
>
>           Routing services   "route:default ripng:default"
>
> Routing daemons:
>
>                      STATE   FMRI
>                   disabled   svc:/network/routing/rdisc:default
>                     online   svc:/network/routing/route:default
>                     online   svc:/network/routing/ndp:default
>                     online   svc:/network/routing/ripng:default
>                   disabled   svc:/network/routing/legacy-routing:ipv4
>                   disabled   svc:/network/routing/legacy-routing:ipv6
>
> 4.2 global zone の rge0 (zone-ocnipv6 の vnic0) と同一セグメントには
>    zone-ocnipv6 で 2001:380:14b:0::/64 を広告する
>
> zone# cat /etc/inet/ndpd.conf
> ifdefault AdvSendAdvertisements on
> prefixdefault AdvOnLinkFlag on AdvAutonomousFlag on
> if vnic0 AdvSendAdvertisements 1
> prefix 2001:380:14b:0::/64 vnic0
>
> 4.3 global zone では bge0 のセグメントに 2001:380:14b:1::/64 を広告する
>
> global# # cat /etc/inet/ndpd.conf
> ifdefault AdvSendAdvertisements on
> prefixdefault AdvOnLinkFlag on AdvAutonomousFlag on
> if bge0 AdvSendAdvertisements 1
> prefix 2001:380:14b:1::/64 bge0
>
> 5. global zone でやっている IPFilter の設定を、「60.32.13.198 を出入りす
>   る ipv6 プロトコルを許可する」ように修正する
>
>   これに気づくのに2時間ほど悩んだのはくれぐれもナイショです。(^^;
>
> 6. 周辺の機器を適宜設定変更する
>
> 7. www.v6.ntt.net への到達性を確認する
>
> 7.1 zone-ocnipv6 で
>
> zone# traceroute -n -A inet6 www.v6.ntt.net
> traceroute: Warning: Multiple interfaces found; using 2001:380:14b::3 @ 
> vnic0:1
> traceroute to www.v6.ntt.net (2001:218:2001:3005::8a), 30 hops max, 60 byte 
> packets
>  1  2001:380:80a0::d  21.863 ms  21.606 ms  21.556 ms
>  2  2001:380:80a0:6::1  21.474 ms  54.569 ms  21.533 ms
>  3  2001:380:8130:11::19  22.062 ms  22.113 ms  22.498 ms
>  4  2001:380:0:2e05::2  21.950 ms  23.398 ms  22.109 ms
>  5  2001:218:0:6000::189  86.397 ms  117.880 ms  22.033 ms
>  6  2001:218:0:2000::1cd  21.823 ms  21.839 ms  24.276 ms
>  7  2001:218:0:6000::52  25.950 ms  24.962 ms  25.008 ms
>  8  2001:218:2001:17::2  24.947 ms  25.819 ms  24.914 ms
>  9  2001:218:2001:3005::8a  24.891 ms  24.717 ms  24.926 ms
>
> 7.2 global zone で
>
> # traceroute -n -A inet6 www.v6.ntt.net
> traceroute: Warning: Multiple interfaces found; using 2001:380:14b::2 @ rge0:1
> traceroute to www.v6.ntt.net (2001:218:2001:3005::8a), 30 hops max, 60 byte 
> packets
>  1  2001:380:14b::3  0.392 ms  0.118 ms  0.109 ms
>  2  2001:380:80a0::d  21.590 ms  21.401 ms  21.562 ms
>  3  2001:380:80a0:6::2  21.677 ms  38.622 ms  21.646 ms
>  4  2001:380:8130:12::19  21.708 ms  21.906 ms  21.992 ms
>  5  2001:380:0:2e05::2  127.427 ms  100.023 ms  21.747 ms
>  6  2001:218:0:6000::189  47.606 ms  75.928 ms  43.703 ms
>  7  2001:218:0:2000::1cd  22.230 ms  23.173 ms  24.662 ms
>  8  2001:218:0:6000::52  24.854 ms  24.884 ms  29.377 ms
>  9  2001:218:2001:17::2  25.025 ms  25.610 ms  24.963 ms
> 10  2001:218:2001:3005::8a  25.140 ms  25.034 ms  25.432 ms
>
> 7.3 他のマシンでも
>
> pc98$ traceroute6 -n www.v6.ntt.net
> traceroute6 to www.v6.ntt.net (2001:218:2001:3005::8a) from 
> 2001:380:14b:0:200:4cff:fe17:573c, 64 hops max, 12 byte packets
>  1  2001:380:14b::3  0.842 ms  0.616 ms  0.592 ms
>  2  2001:380:80a0::d  22.425 ms  23.376 ms  22.360 ms
>  3  2001:380:80a0:6::1  22.470 ms  22.681 ms  59.194 ms
>  4  2001:380:8130:12::19  22.835 ms  54.425 ms  22.744 ms
>  5  2001:380:0:2e05::2  23.130 ms  23.344 ms  22.946 ms
>  6  2001:218:0:6000::189  22.656 ms  22.860 ms  205.998 ms
>  7  2001:218:0:2000::1cd  22.782 ms  22.912 ms  22.892 ms
>  8  2001:218:0:6000::52  25.890 ms  54.523 ms  25.730 ms
>  9  2001:218:2001:17::2  26.215 ms  25.854 ms  25.526 ms
> 10  2001:218:2001:3005::8a  25.817 ms  25.626 ms  25.952 ms
>
> 7.4 www.kame.net でカメ動いた!
>
> 8. まとめ
>
> 正しい使い方ができている自信を持てていないけれど、Zone って便利かも。
>
> 参考文献
>
> [1] OCN IPv6トンネル接続サービス 詳細 技術情報 | OCN for ビジネス
>    http://www.ocn.ne.jp/business/ipv6/tunnel/tech.html
>
> [2] Solaris8:矢吹さまご作成 IPv6 on Solaris のページ
>    http://www.optix.org/~dxy/solaris/ipv6/
> --
> NAKAJI Hiroyuki (中治 弘行)
> _______________________________________________
> ug-jposug mailing list
> [email protected]
> http://mail.opensolaris.org/mailman/listinfo/ug-jposug
>
_______________________________________________
ug-jposug mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/ug-jposug

メールによる返信