LVS ( Linux Virtual Server ) で DSR ( Direct Server Return ) のロードバランサ環境を、オーケストレーションツールの Serf を使って自動管理しよう、という内容です。当記事の検証は、CentOS 6.5 (x86_64)上で、Serf v0.4.5 を使用しています。 設定の方向性は、バランシング先のノードの増減を Serf を使って管理します。Serf のメンバに join する事で、自動的にバランシング先に組み込みます。また、障害発生時 ( fail ) やノードから離れる ( leave ) 時にも、自動的にバランシング情報の削除を試みました。 ◆ OSC 1014 Tokyo/Fall で登壇させて頂きました オープンソースカンファレンス 3月1日(土) 、オープンクラウドキャンパス枠で登壇させていただきました。内容は、オー
わりと長い間悩んでいたんだけど、最近解決したのでメモ。 サービスで利用しているsmalllightの画像変換サーバが、Apacheが使っているメモリ以上のメモリを使用し、Swapしたりメモリ枯渇でサーバがダウンするなどのことが何度かありました。 ↑メモリの動きはこんな感じ いろいろ調べた結果「dentry cache」なるものがメモリ多くを占めていることがわかりました。dentry cacheはディレクトリやファイル名とinodeとを結びつけに使われるキャッシュです。smalllightでは画像を変換する際に一時ファイルを作成するので、その情報が残るようです。 手元で再現させる 本番で使っているサーバはCentOS5系ですが、手元のVagrant上のCentOS6(ファイルシステムはext4)で、再現させてみました。 use Parallel::Prefork; use File::Tem
Shin x blog Advent Calendar 2013 の 7 日目です。 いよいよ CentOS 6.5 から Docker がサポートされたということで、実際にインストールしてみました。 Vagrant で CentOS 6.5 環境 Vagrant で CentOS 6.5 環境を作ります。( CentOS 6.5 環境がある場合は不要です。) CentOS 6.5 の Box ファイルには、Opscode が提供している Bento プロジェクトのものを利用しました。 $ vagrant init opscode-centos65 http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-6.5_chef-provisionerless.box $ vagrant up $ vag
タイトルで言いたいことはすべて言った。 経緯 うちの場合はLVS+keepalivedなロードバランサなんだけど、ちょくちょくkernel panicになる問題が発生してた。 そこでcrashコマンドで解析してみた。crashコマンドの使い方はこちらが参考になる。Linux crash dump 読み方入門 # crash /boot/System.map-2.6.32-279.14.1.el6.x86_64 /usr/lib/debug/lib/modules/2.6.32-279.14.1.el6.x86_64/vmlinux /var/crash/127.0.0.1-2013-09-27-16\:21\:01/vmcore (snip) SYSTEM MAP: /boot/System.map-2.6.32-279.14.1.el6.x86_64 DEBUG KERNEL: /usr
2008年-2010年のブログ記事のアーカイブ。 現行はこちら > http://sa3g.blogspot.com/ Linux (確認はCentOS4と5) をインストールしたら、 "/etc/crontab" に最初からrun-partsの実行が登録してある。 ※もしも入ってない場合は、特殊なケースかと思うけど、「crontab」 パッケージに入っているので入れます。 crontab はこんな感じ。 ・ ・ # run-parts 01 * * * * root run-parts /etc/cron.hourly 59 4 * * * root run-parts /etc/cron.daily 5 4 * * 0 root run-parts /etc/cron.weekly 9 4 1 * * root run-parts /etc/cron.monthly run-parts
CentOS6 の cron.daily 実行時刻は、CentOS5 以前とは異なります。 ※この記事に書いた手順は、RHEL8 / RHEL7 / RHEL6でも通用します。末尾参照 CentOS5 以前であれば、デフォルトでは午前4:02にスケジュールされていましたが、CentOS6 のデフォルトでは、ある幅の範囲内でランダム化されています。 まずは、このランダム化の内容を確認してみます。 最初に /etc/crontab を見てみますと、次のように空っぽです。 SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 -
何日か前にMPICH2をインストールしたときのメモ。インストール自体は先日と違ってC++コードを編集して…なんてこともなくサクッと完了。それが普通なハズ…だが。 $ ./configure --prefix=/opt/mpich2 $ make # make install さて, MPIを使用するに当たっていくつか環境変数の設定が必要とのこと。起動時に毎回exportするのもメンドい、大勢で共有するため.bashrc(.cshrc)などを全員分編集するのも骨が折れる…というときにRedHat系Linuxでは /etc/profile.d/ というのが便利。使用しているシェルに応じて自動的にこのディレクトリ内のスクリプトを実行してくれる。この他にも /etc/bashrc や /etc/profile などをいじるという方法もあるが、profile.dはこの設定はこのソフト用、ということが
start-stop-daemonを使うと、適当なプログラムを簡単にデーモン化できるらしい。バックグラウンドで動作させたり、PIDファイルを自動で作ったりしてくれるらしい。 でも、CentOSでは使えないのでどうしようかなぁ、と思っていたら、Cに移植したやつがあって、RPMのSPECファイルまで用意されていた。(http://www.sssg.org/blogs/naoya/archives/1097) これを使えば、tig.rbを簡単にデーモン化できた。 #! /bin/bash pidfile=/var/run/tig.pid name="tig" prog="/home/mzp/daemons/tig/examples/tig.rb" SSD=/usr/sbin/start-stop-daemon start() { echo -n $"Starting $name: " $SSD
2012年05月10日11:00 Ruby Linux CentOS6.2 に Rails + Nginx + Unicorn な環境を作った 必要になって久しぶりに環境作りました。にしても、しばらく触ってなかったからかいろいろ忘れてて大変でした。今度のために簡単にまとめておきます :D ネットワーク まずはネットワーク周りの設定をします。 vi /etc/sysconfig/network-scripts/ifcfg-eth0 vi /etc/sysconfig/network # NETWORKING_IPV6=no vi /etc/resolv.conf sudo /etc/init.d/network restart ssh 次は ssh 周りの設定です。ポート番号変えたりとかパスワード認証不可にしたりとか公開鍵認証を許可したりとかすると良いでしょう。 vi /etc/ssh/ss
人気記事ランキング Apacheのバージョン確認方法 355件のビュー dnf にEPELリポジトリを追加する Rocky Linux 8, 9, 10 265件のビュー findで指定サイズより大きいもしくは小さいファイルを探す 239件のビュー デフォルトゲートウェイの設定 routeコマンド 205件のビュー firewalldの設定 Rocky Linux 198件のビュー dnfのアップデートがうまくいかない場合にキャッシュをクリアする 184件のビュー Rocky Linux のOSバージョンを確認する 136件のビュー タイムゾーンを日本標準時(JST)に変更する Rocky Linux 8, 9, 10 120件のビュー デフォルトゲートウェイの設定 ip コマンド (iproute2) 116件のビュー NetworkManagerによるresolv.confの自動生成を
このさくらのVPSサーバを再起動させた際にMySQLが自動的に立ち上がってなくて、どうやらchkconfigの設定が抜けていたようなので、下記の手順で設定した。 # cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld # chmod +x etc/init.d/mysqld # chkconfig --add mysqld # chkconfig mysqld on 下記のサイトを参考にした。 CentOSで自宅サーバー構築 - データベースサーバ構築(MySQL) MySQL 5.1 リファレンスマニュアル - 2.10.2.2. MySQL を自動的に起動・停止する
起動スクリプト # cp -rp /usr/local/src/httpd-2.2.15/build/rpm/httpd.init /etc/rc.d/init.d/httpd # chmod 755 /etc/rc.d/init.d/httpd # vi /etc/rc.d/init.d/httpd httpd=${HTTPD-/usr/local/apache2/bin/httpd} pidfile=${PIDFILE-/usr/local/apache2/logs/httpd.pid} CONFFILE=/usr/local/apache2/conf/httpd.conf 自動起動 # chkconfig –add httpd # chkconfig httpd on # chkconfig –list | grep httpd httpd 0:off 1:o
本環境では、OpenSSLがインストールされていたので、そのまま使用しましたが、インストールされていない場合、もしくは入れ直したい場合は、OpenSSLインストールをご参照下さい。 インストールされているかどうかについての確認方法は以下の通りです。 <rpmコマンドの場合> # rpm -qa | grep openssl openssl-devel-0.9.7a-43.10 openssl-0.9.7a-43.10 xmlsec1-openssl-1.2.6-3 ※インストールされている時の出力例です。<yumコマンドの場合> # yum list openssl Installed Packages openssl.i686 0.9.7a-43.10 installed Available Packages openssl.i586 0.9.7a-43.16 base openssl.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く