Memo/Linux/systemd

https://dexlab.net:443/pukiwiki/index.php?Memo/Linux/systemd
 

systemd

  • RHEL/CentOS
    • 6まではinitdを使用している。
    • 7以上はinitdからsystemdに変わった。
  • デフォルト設定: RHEL/CentOS 7
    grep TimeoutStart /etc/systemd/system.conf
    #DefaultTimeoutStartSec=90s

ulimitの変更(max open files/max processes)

  • systemdの場合、pam用の「/etc/security/limits.d/」に置いても効かない。
  • コマンドでの確認も、ユーザのulimitを確認しても無意味で、プロセスのulimitの値を確認する。
  • 確認コマンド
    sudo cat /proc/$(pidof mongod)/limits | grep -P "open|proc"
    Max processes             64000                64000                processes 
    Max open files            64000                64000                files
  • Memo/MongoDB RHEL/CentOS 7の場合
    sudo mkdir /etc/systemd/system/mongod.service.d
    sudo vim /etc/systemd/system/mongod.service.d/limits.conf
    --
    # https://docs.mongodb.com/manual/reference/ulimit/ 
    #
    # The settings is what mongoDB officially recommends.
    #
    [Service]
    # Other directives omitted
    # (file size)
    LimitFSIZE=infinity
    # (cpu time)
    LimitCPU=infinity
    # (virtual memory size)
    LimitAS=infinity
    # (open files)
    LimitNOFILE=64000
    # (processes/threads)
    LimitNPROC=64000
    --
    sudo systemctl daemon-reload
    sudo service mongod restart

起動/終了時のタイムアウトの変更

  • 設定ファイル内のパラメータ名(TimeoutStartSec?)と、コマンドで指定するパラメータ名(TimeoutStartUSec)が違う事があるので注意
  • デフォルトserviceの確認: RHEL/CentOS 7では90秒
    systemctl show service -p TimeoutStartUSec
    TimeoutStartUSec=1min 30s
  • Memo/MongoDBTimeoutStartSec?を90秒から3分に伸ばす
    sudo vim /etc/systemd/system/mongod.service.d/timeout.conf
    --
    [Service]
    TimeoutStartSec=3m
    --
    
    sudo systemctl daemon-reload
    systemctl show mongod -p TimeoutStartUSec
    TimeoutStartUSec=3min
  • TimeoutStartSec?="3m" のようにダブルクオーテーションで括ると認識せず、デフォルトの値に戻ってしまう

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-10-25 (木) 17:27:30 (23d)