{"id":6099,"date":"2016-03-26T22:01:47","date_gmt":"2016-03-26T13:01:47","guid":{"rendered":"https:\/\/www.taruki.com\/wp\/?p=6099"},"modified":"2016-03-28T22:04:33","modified_gmt":"2016-03-28T13:04:33","slug":"%e3%81%a9%e3%81%a9%e3%82%93%e3%81%a8%e3%81%b5%e3%82%92debiannginx%e3%81%a7%e5%8b%95%e3%81%8b%e3%81%99%e3%82%84%e3%82%8a%e6%96%b9%ef%bc%a0%e5%85%ac%e5%bc%8f%e9%af%963rd","status":"publish","type":"post","link":"https:\/\/www.taruki.com\/wp\/?p=6099","title":{"rendered":"\u3069\u3069\u3093\u3068\u3075\u3092debian+nginx\u3067\u52d5\u304b\u3059\u3084\u308a\u65b9(OS\u7de8)\uff20\u516c\u5f0f\u9bd63rd"},"content":{"rendered":"<h1>\u30d1\u30fc\u30c6\u30a3\u30fc\u30b7\u30e7\u30f3\u69cb\u6210(\u30b7\u30b9\u30c6\u30e0\u4ee5\u5916)<\/h1>\n<p>\u30d1\u30fc\u30c6\u30a3\u30fc\u30b7\u30e7\u30f3\u30ec\u30a4\u30a2\u30a6\u30c8\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002(df -h\u306e\u7d50\u679c)<br \/>\nvda\u3068vdb\u306f\u3001qcow2\u306e\u30a4\u30e1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb\u3067\u3059\u304c\u3001\u30db\u30b9\u30c8OS\u3067\u306f\u3001vda\u304cMegaRAID\u306eRAID1\u8ad6\u7406\u30c9\u30e9\u30a4\u30d6(btrfs)\u3001vdb\u304cSSD\u00d72\u306eSW-RAID1(btrfs)\u306b\u914d\u7f6e\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<pre class=\"\">\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9   \u30b5\u30a4\u30ba  \u4f7f\u7528  \u6b8b\u308a \u4f7f\u7528% \u30de\u30a6\u30f3\u30c8\u4f4d\u7f6e\r\nudev             7.9G     0  7.9G    0% \/dev\r\ntmpfs            1.6G   89M  1.5G    6% \/run\r\n\/dev\/vda1        9.1G  2.9G  5.8G   34% \/\r\ntmpfs            7.9G     0  7.9G    0% \/dev\/shm\r\ntmpfs            5.0M     0  5.0M    0% \/run\/lock\r\ntmpfs            7.9G     0  7.9G    0% \/sys\/fs\/cgroup\r\n\/dev\/vda3         82G   12G   68G   15% \/srv\/hdd\r\n\/dev\/vdb1        100G   41G   59G   42% \/srv\/ssd\r\n\/dev\/zram0       2.0G  509M  1.4G   27% \/srv\/ram\r\n<\/pre>\n<p>\u3055\u3089\u306b\u3001btrfs\u306e\u30b5\u30d6\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u4f5c\u6210\u3057\u3001snapshot\u3092\u53d6\u5f97\u3057\u3084\u3059\u3044\u3088\u3046\u306b\u8272\u3005\u3068\u8a2d\u5b9a<\/p>\n<pre>\/srv\/ssd\/www    \u2190nginx\u306eDocumentRoot\u3067\u3042\u308a\u3001\u3069\u3069\u3093\u3068\u3075\u672c\u4f53\u3084\u3001imageUploadSpace\u3092\u914d\u7f6e\r\n\/srv\/ssd\/data   \u2190\/srv\/ram\/data\u4ee5\u4e0b\u3068\u5b9a\u671f\u7684\u306brsync\u3059\u308b\u5148\r\n\/srv\/hdd\/log    \u2190nginx\u306e\u30a2\u30af\u30bb\u30b9\u30ed\u30b0\u3084\u3001\u3069\u3069\u3093\u3068\u3075\u306elog\u4fdd\u7ba1\u5834\u6240\r\n\/srv\/ram\/data   \u2190\u3069\u3069\u3093\u3068\u3075\u306esavedata\u4fdd\u5b58\u5834\u6240\r\n<\/pre>\n<h2>RAMDISK\u306e\u4f5c\u6210\u3068\u30ea\u30b9\u30c8\u30a2<\/h2>\n<p>zram0\u306b\u3064\u3044\u3066\u306f\u3001\u30b7\u30b9\u30c6\u30e0\u8d77\u52d5\u6642\u306bzram_init\u3068\u3044\u3046ShellScript\u3067zram\u3092\u521d\u671f\u5316\u3057\u3001SSD\u304b\u3089\u30b3\u30d4\u30fc\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u3044\u307e\u3059\u3002<br \/>\nzram_init\u306e\u4e2d\u8eab(\u5bb9\u91cf\u306f2GB\u78ba\u4fdd\u3057\u3066\u3044\u307e\u3059\u304c\u3001\u666e\u901a\u306f512MB\u3067\u3082\u8db3\u308a\u308b\u3068\u601d\u3044\u307e\u3059)<\/p>\n<pre class=\"\">#!\/bin\/bash\r\ncat \/proc\/mounts |grep zram0\r\nif [ $? -eq 0 ]\r\nthen\r\n  echo \"zram0 is ready\"\r\nelse\r\n  echo \"formatting zram0\"\r\n  modprobe zram\r\n  echo 2G >\/sys\/block\/zram0\/disksize\r\n  mkfs.btrfs \/dev\/zram0\r\n  echo \"mounting \/dev\/zram0 to \/srv\/ram\"\r\n  mount -t btrfs \/dev\/zram0 -o compress=no,nobarrier,noatime \/srv\/ram\r\n  mkdir \/srv\/ram\/data\r\n  cd \/srv\/ssd\/data && rsync -avuAX * \/srv\/ram\/data\/ --exclude='*.lock'\r\nfi\r\n<\/pre>\n<h1>\u30ab\u30fc\u30cd\u30eb\u307e\u308f\u308a\u306e\u8a2d\u5b9a<\/h1>\n<p>\/etc\/sysctl.conf\u306b\u4ee5\u4e0b\u306e\u8a2d\u5b9a\u3092\u8ffd\u52a0\u3057\u3001\u30d0\u30c3\u30d5\u30a1\u76db\u308a\u76db\u308a\u306e\u30ab\u30ea\u30ab\u30ea\u30c1\u30e5\u30fc\u30cb\u30f3\u30b0\u3057\u3066\u307e\u3059\u3002<\/p>\n<pre>net.ipv4.conf.all.arp_ignore = 1\r\nnet.ipv4.conf.all.arp_announce = 1\r\nnet.ipv4.conf.all.arp_filter = 0\r\n# Protect Against TCP Time-Wait\r\nnet.ipv4.tcp_rfc1337 = 1\r\n# Allowed local port range\r\nnet.ipv4.ip_local_port_range = 8192 65535\r\n\r\nnet.ipv4.tcp_mem = 65536 131072 262144\r\nnet.ipv4.udp_mem = 65536 131072 262144\r\n\r\n# Increase the read-buffer space allocatable\r\nnet.ipv4.tcp_rmem = 8192 87380 16777216\r\nnet.ipv4.udp_rmem_min = 16384\r\n\r\n# Increase the write-buffer-space allocatable\r\nnet.ipv4.tcp_wmem = 8192 65536 16777216\r\nnet.ipv4.udp_wmem_min = 16384\r\n\r\n# Increase the tcp-time-wait buckets pool size to prevent simple DOS attacks\r\nnet.ipv4.tcp_max_tw_buckets = 1440000\r\nnet.ipv4.tcp_tw_recycle = 1\r\nnet.ipv4.tcp_tw_reuse = 1\r\n\r\nnet.core.somaxconn = 32768\r\nnet.ipv4.tcp_max_syn_backlog=1024\r\nnet.ipv4.tcp_slow_start_after_idle=0\r\n<\/pre>\n<h1>\u524d\u63d0\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h1>\n<p>\u3069\u3069\u3093\u3068\u3075\u304c\u7a3c\u50cd\u3059\u308b\u306e\u306b\u5fc5\u8981\u306a\u524d\u63d0\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3002(ruby\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306f\u30011.9.x\uff5e2.2\u3067\u52d5\u4f5c\u78ba\u8a8d\u6e08\u307f\u30022.3\u4ee5\u964d\u306f\u305f\u3076\u3093\u52d5\u304f\u3068\u601d\u3044\u307e\u3059\u304c\u3001\u30c0\u30e1\u3060\u3063\u305f\u3089\u4f5c\u8005\u306b\u30d0\u30b0\u30ec\u30dd\u30fc\u30c8\u3057\u3066\u304f\u3060\u3055\u3044)<\/p>\n<pre>$ sudo apt-get install nginx-extras fcgiwrap ruby2.2 ruby-uconv  libfcgi-dev gcc make ruby2.2-dev rake\r\n$ sudo gem2.2 install fcgi msgpack json i18n\r\n<\/pre>\n<p>\u4eee\u60f3\u30de\u30b7\u30f3\u306eOS\u307e\u308f\u308a\u306e\u8a2d\u5b9a\u3067\u3057\u305f\u3002nginx\u3084\u3069\u3069\u3093\u3068\u3075\u672c\u4f53\u306e\u8a2d\u5b9a\u306b\u3064\u3044\u3066\u306f\u3001\u5f8c\u65e5\u7d9a\u304d\u3092\u66f8\u3044\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u30d1\u30fc\u30c6\u30a3\u30fc\u30b7\u30e7\u30f3\u69cb\u6210(\u30b7\u30b9\u30c6\u30e0\u4ee5\u5916) \u30d1\u30fc\u30c6\u30a3\u30fc\u30b7\u30e7\u30f3\u30ec\u30a4\u30a2\u30a6\u30c8\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002(df -h\u306e\u7d50\u679c) vda\u3068vdb\u306f\u3001qcow2\u306e\u30a4\u30e1\u30fc\u30b8\u30d5\u30a1\u30a4\u30eb\u3067\u3059\u304c\u3001\u30db\u30b9\u30c8OS\u3067\u306f\u3001vda\u304cMegaRAID\u306eRAID [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","footnotes":""},"categories":[48],"tags":[50,51,49,52],"class_list":["post-6099","post","type-post","status-publish","format-standard","hentry","category-48","tag-debian","tag-dodontof","tag-linux","tag-nginx"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/6099","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6099"}],"version-history":[{"count":0,"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/6099\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6099"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6099"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.taruki.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6099"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}