2012-10-28 Sun

[別の年の同じ日: 2003 2004 2006 2007 2008 2010

稼動中の zone のリソース割り当てを変更する はてぶ

ということで,prctl を使って稼動中の zone のリソースを変更する方法.

変更する前に現状の確認.

testserver という zone の確認をする場合は以下.

# prctl -i zone testserver
zone: 4: testserver
NAME    PRIVILEGE       VALUE    FLAG   ACTION                       RECIPIENT
zone.max-lofi
        usage               0
        system          18.4E     max   deny                                 -
zone.max-swap
        usage           58.1MB
        system          16.0EB    max   deny                                 -
zone.max-locked-memory
        usage               0B
        system          16.0EB    max   deny                                 -
zone.max-shm-memory
        system          16.0EB    max   deny                                 -
zone.max-shm-ids
        system          16.8M     max   deny                                 -
zone.max-sem-ids
        system          16.8M     max   deny                                 -
zone.max-msg-ids
        system          16.8M     max   deny                                 -
zone.max-processes
        usage              26
        system          2.15G     max   deny                                 -
zone.max-lwps
        usage             124
        system          2.15G     max   deny                                 -
zone.cpu-cap
        usage               0
        privileged        100       -   deny                                 -
        system          4.29G     inf   deny                                 -
zone.cpu-shares
        usage               1
        privileged          1       -   none                                 -
        system          65.5K     max   none                                 -


zone.cpu-cap だけ表示したい場合は
"-n" オプションに zone.cpu-cap を渡す.

# prctl -n zone.cpu-cap -i zone testserver
zone: 4: testserver
NAME    PRIVILEGE       VALUE    FLAG   ACTION                       RECIPIENT
zone.cpu-cap
        usage               0
        privileged        100       -   deny                                 -
        system          4.29G     inf   deny                                 -


この表示は zonecfg -z testserver info で表示される以下の部分に相当.

rctl:
        name: zone.cpu-cap
        value: (priv=privileged,limit=100,action=deny)


prctl の

	        privileged        100       -   deny                                 -


と zonecfg の

	        value: (priv=privileged,limit=100,action=deny)


が対応している.

今,100 に設定されている cpu-cap を 200 に変更してみる.

# prctl -r -t privileged -n zone.cpu-cap -v 200 -i zone testserver


これで以下のように cpu-cap が 200 に変更される.

# prctl -n zone.cpu-cap -i zone testserverzone: 4: testserver
NAME    PRIVILEGE       VALUE    FLAG   ACTION                       RECIPIENT
zone.cpu-cap
        usage               0
        privileged        200       -   deny                                 -
        system          4.29G     inf   deny                                 -


稼動中の testserver の cpu-cap は変更できたが,
zonecfg の方は変更されないので,再起動後も cpu-cap を 200 にしたければ,
zonecfg で変更しておく必要がある.

Hiera はてぶ

Puppet で使われている Hierarchical datastore の Hiera について
そろそろまとめておきたいので,URL をメモ.

- Puppet backend for Hiera | R.I.Pienaar
  http://www.devco.net/archives/2011/06/06/puppet_backend_for_hiera.php
- puppetlabs/hiera · GitHub
  https://github.com/puppetlabs/hiera