超解釈, 運用管理

HTTPステータスコード(5xx)についての超解釈です。

5xxはサーバ事由のエラーによるものでオリジンサーバもしくはプロクシサーバから返されますが、自分に分りやすいように一番問題になりそうな部分だけフォーカスして表にしています。

その中でも500/502/503/504はよく目にすると思いますので、そのあたりに注目しておけばよいと思います。

ステータス番号 説明 調査箇所 返答元サーバ
500 プログラムエラー オリジンサーバのプログラム オリジン
501 クライアントからのリクエストメソッド要求に対応していない場合 クライアントやオリジンサーバのリクエスト仕様の確認 オリジン
502 オリジンサーバからの正常な返答がなかった。4xx、5xxなど オリジンサーバとそこまでの経路 プロクシ
503 ごめん、ちょっと今無理。負荷が高いの オリジンサーバの負荷 オリジン
504 オリジンサーバからレスポンスがなかった オリジンサーバとそこまでの経路 プロクシ
505 クライアントが指定するHTTPプロトコルバージョンをオリジンサーバがサポートしていない 適切なHTTPプロトコルの選定 オリジン
506 コンテントネゴシエーション関連のエラー オリジンサーバのネゴシエーション関連の設定 オリジン
507 WebDAVサーバの容量不足 サーバの容量 オリジン
508 WebDAVでの無限ループ WebDAV設定 オリジン
509 帯域超過 オリジンサーバの設定と帯域 オリジン
510 クライアント側からのリクエストメソッド(Man)の不備 クライアント側の設定 オリジン
511  WiFiスポットにおける認証が行われていない場合。プロクシサーバがインターセプトしてステータスコード511を返答している。  クライアントのWiFiなどの認証 プロクシ

RackTables, 小ネタ, 運用管理

 

前のブログにも書きましたが、DMM.comラボではRackTablesを使っています。

素のままだと、機器リストのファイル出力はできないのですが、RackTables Extensionを使えば、検索結果をCSVで出力することができるようになります。

RackTables Extension
http://www.mogilowski.net/lang/de-de/2013/09/03/racktables-extension-0-3-1/

これで面倒な監査にも対応できるってわけですよ。
RackTablesの小ネタでした。

linux, 小ネタ, 運用管理

デバイスがどのCPUに割り込みのリクエストを出すのかを調整するためにはaffinity設定を利用し実現します。

affinityの設定は/proc/irq配下のそれぞれのirq番号配下のsmp_affinityの値を16進数で修正しなくてはいけません。
マルチキューを持つネットワークインターフェースであればそれぞれ割り当てられているIRQ番号で設定を行っていく必要があります。
たとえばecho ffffff > /proc/irq/70/smp_affinityといった感じで設定します。
参考:マルチキューネットワークインターフェース

これを簡単に行ってくれるtunaというツールがredhatより提供されているのをつい先日知りましたので共有します。
guiからでもcliからでも利用が可能なツールです。

兎にも角にも使ってみます。

まずはインストール※centos6のupdatesレポジトリに含まれていました。

CPUが24スレッドの環境において下記のような16進数の設定になっています。
aaaaaaは1,3,5,7,9,11,13,15,17,19,21,23のCPUを利用し、
555555は0,2,4,6,8,10,12,14,16,18,20,22のCPUを利用されることになります。

この値を変更する場合は

これでp1p1のネットワークインターフェースですべてのCPUを利用することになります。

コマンドで確認してみます。

ffffffとなり設定が変更されたことがわかると思います。

注意点としてはirqbalanceで上書きされないように留意しなくてはいけないところですかね。

tuna –show_threadsとすると、たとえばnginxがどのCPUに割り込み要求を出すのかも分かりますので、
意図的にnginxの割り込み先のCPUを制御したいときなんかにも使えると思います。

うち例だとこんな感じでthreadsが表示されます。

RackTables, 運用管理

みなさん、racktablesをご存知でしょうか?

http://www.racktables.org/

racktablesとはデータセンター、ラック、サーバ資産やアドレスの管理などさまざまなインフラのリソースを管理するソフトウェアです。

デモが用意されているようですので一度試してみてはいかがでしょうか?

ラボでは、つい先日、racktablesへデータの移行がようやく完了し使い始めました。

いままでは自社開発のツールを使っていたのですが、仮想インスタンス情報の管理が苦手なシステムだったのでracktablesへの移行を決断した次第です。

IPアドレスの管理や、VLANの管理、負荷分散装置配下のリソースプールの管理なども便利で助かっています。

DMMラボでも使い始めたばかりですので試行錯誤しながらですが、

少しずつ情報を公開できたらなと思っています。

とりあえず、今回はラックの管理部分についての画像をお見せしたいと思います。

まずはラックの全体像

racktablesラック一覧

 

上記のラックをクリックすると、下記のようそれぞれのラックの機器搭載状況が確認できます。

racktablesラック単体

 

ラックの全体像を見れば空いているラックが一目瞭然で確認でき効率性が向上するのではと期待しています。

使っている電力もここで管理できるようになると面白いかなと思っていてipmi経由で現在利用している電力を取得し表示するプラグインを作成したいなと考えています。

運用管理

 

サーバのラッキングやケーブリングの際、手元に「必要なものがない」ってよくありませんか?

その幾度、取りに行くのですが腰がいたくていたくて。^^;

また、取ってきた場所に戻さなかったりして、後々問題となることもしばしば。

メモ帳などの文房具やタイラップなど細かいものもよく必要になりますので、

人数分腰袋を用意して、その中に必要なものを入れるようにしました。

腰袋はこんな感じです。

写真 (7)

 

指を保護するために手袋もしっかりと入っています。

電動ドライバーもあるのですが、さすがに全員の腰袋には入れていません。

PAGE TOP