Linux

Linuxでファイルのチェックサム(check sum)の確認

たまにしか使わないのでメモ。 以下、Ubuntuで確認。 $ cksum test.dat 474118298 31704395710 test.dat $ md5sum test.dat e7855da4476705eb1a1fb7f92d0c6ab8 test.dat $ sha1sum test.dat 4eade702552666f5ec553b0174e965edf03f8c53 test.dat opensslコマ…

Linuxでストライピング(RAID0)なソフトウェアRAIDを組んでいた際にデバイスが外れてしまった場合

若手が(ry・・・シリーズ。次から他の人にやってほしいのでw 共有用のメモを残してしておきます。 Linuxのサーバで、ソフトウェアRAID(ストライピング)を組んでいたときに、片方のデバイスが不調で外れてしまったんだけど、デバイス内のデータは無事で、復…

複数のWebサーバでSSLセッションキャッシュを共有してSSL処理を高速化(Apache + mod_ssl + mod_socache_memcache)

HTTPS(SSL利用)サイトがSEO的に優遇されるトレンドで、世間的にもHTTPS接続でサイト運用するサービスが増えてきています。 これが、ハイトラフィックサイトになってくると、このフロントエンドでSSL処理させることが負荷的にもなかなか辛いのです。 で、Apac…

Apache 2.4系のRPMファイルを作成する

最近すっかりブログを書く頻度が落ちてしまっているので、このブログで1人アドベントカレンダーをやろうとしてたら、早速12/1から欠損してしまう程度にはダメ人間の私でございます。こんにちは。 ということで、ライトなネタと言えばメモ整理ということで、3…

LinuxでFusion-io ioDrive2の基本セットアップ

久しぶりに触ったのと、人と共有するためにメモっておく。 尚、OSはCentOS 6.4 (x86_64)、ioDrive2はDELL OEMなカードを使ったのと、ファイルシステムはXFSにした。 ちなみに、このメモを書いたのは4月なんだけど、なぜか7ヶ月も寝かせてしまっていた。 ドラ…

nanapi勉強会 vol2 で、シェルオプションの話をしてきた #nanapi_study

nanapiのCTOである@wadapさんに声をかけていただいて、LTをやってきました。 nanapi勉強会 vol2 - Shellの活用でこれだけ毎日が便利になる LTで使った資料を以下に公開しておきます。 bash(set)コマンドのオプション3選 from Yuuki Namikawa 資料だけだと伝…

Sensu Serverをインストールする手順メモ

ゴールデンウィークに突入したタイミングで色々忘れてしまいそうなので、ここにSensu Serverの作り方をメモっておく。 ちなみに、Sensuは最近ナウなヤングにバカうけのモニタリングツール。インストールした環境は、CentOS 6.5 (Linux version 2.6.32-431.11…

特定のソースIPアドレスからpingを送りたいとき

人生で彼是5回くらいググっている気がするので写経しておく。サーバに複数のネットワークインターフェースがついていたり、IPエイリアス(VIP)を付与していたりして、複数のIPアドレスを持っている場合、特定のIPアドレスをソースとしてpingを送りたい、とい…

Redis(2.8系)の基本オペレーションとかSentinelの挙動とかの色々メモ

最近必要に迫られて、ようやくRedisをインストールして触ってみました。(Redis童貞からの脱却) 色々と、基本部分ではあるけど、せっかく実際に触りながら勉強したので、このエントリにメモしておこうと思います。 尚、使ってみたRedisのバージョンは、stable…

nscdが保持しているキャッシュをクリアする

hostsファイルの記載に誤りがあるまま、telnetコマンドを実行した。 で、誤りに気付き、hostsに記載のIPアドレスを修正し、telnetコマンドを再度実行したが、なぜか古い記載のアドレスに接続しにいく。むむっ、と思って、straceしてチェックしたら、 connect…

Linuxで使っているNICのドライバやバージョンを調べる方法いろいろ

稼働しているLinux OSで、ネットワークインターフェースにどのドライバ(のどのバージョン)が実際に適用されているのか、をどうやって調べたくなる時があります。 覚えている限りでその色々を書いてみる。ちなみに、以降の紹介例ではCentOS 6系で試してみまし…

Quaggaを使ってLinuxサーバで動的ルーティング

Quaggaは、UNIX/Linuxプラットフォームで動くルーティングソフトウェアです。 OSPF、BGP、RIP等のプロトコルが実装されていて、GNU Zebraから派生したソフトウェアだとか。 某所の環境が、ロードバランサを設置(というかLBに仮想IPアドレスを配布)すると上位…

Lsyncdのインストールと設定+α

Lsyncdを入れてみた作業メモ。環境はCentOS 6系で、Lsyncdのバージョンは2.1.4。 Lsyncdは、Linux Kernelに組みこまれているinotifyを使って、指定したディレクトリ配下で変更が加えられた場合に、ほぼリアルタイムにrsyncで(遠隔のサーバなどに)同期をかけ…

HAProxyのパフォーマンスチューニングをやったメモ(CPS編)

HAProxyを使う上で、どうやったらパフォーマンスが上がるのかを模索するメモ。 基本的に、万能なパフォーマンスチューニングはないので、今回はCPS(Connections per Second)のパフォーマンスを上げることに焦点を絞ります。CPS(Connections per Second)は、…

CentOS 6系で xfsaild が "D" Stateのままになる件がFIXされていた

タイトルの件、昔twitterに書いたような気がしますが、xfsaildのステータスが"D"のままになりLAが特定の数字で張り付くことがたまにあって、あんれーと思っていたのですが、気付いたらちゃんとFIXリリースされていました。 あんまりしっかり見ていなくてすみ…

HAProxyを透過型のプロキシとして使う(HAProxy with tproxy)

HAProxyは基本的にL7レイヤのロードバランサー(リバースプロキシ)なので、バックエンドにいるリアルサーバには、フロントエンドから届いたリクエストが、ロードバランサのIPアドレスからアクセスが来たかのように振舞います。 で、HAProxyはtproxy(transpare…

TIME_WAIT状態のTCPコネクションを早く終了させるべくKernelをリビルド

以前、一度やったはずなのですが、すっかり忘れてしまっていて、結局調べることになったので、今回はここに作業ログを残しておきます。 TIME_WAITコネクションの増殖 一般的にネットワークアクセス数が極端に多いサーバでは、TIME_WAIT状態のコネクションが…

HAProxyでSSL処理をできるようにする

ロードバランサとかリバースプロキシを使って色々やっていると、HTTPS/SSL対応かー、どうしようかなーみたいなことを考える日がそのうちやってきたりするかもしれません。 さて、最近触り始めたHAProxyなんですが、公式サイトの記載を見ていると、開発版のバ…

LinuxのTCP SYNの再送間隔の初期値が3秒から1秒に変更されていた

ということに、(今更?)気付いたお話です。HAを組んだ際のVIPの切り替えテストをやっているときに、高負荷時とかは切り替えに7秒ぴったりかかるケースとかがあって、7秒って何の数字だろうと疑問を持ちました。 OSは、CentOS 6.4(2.6.32-358.23.2.el6.x86_64…

HAProxy1.5系(開発版)のRPMを作成する

またしばらくブログを書いていなかった。いつも書いてるけど、こういうときはライトなログを残す。 CentOS 6系にHAProxyの1.5系(開発版)をインストールすべくRPMを作った。 とはいっても、HAProxyのtarballには、specファイルが添付されているので、ビルドす…

6rdプロトコルを使って、IPv6ネットワークとAmazon VPC(EC2)をつないでみた

タイトルの通りですが、IPv6を使っている自ネットワーク環境下から、Amazon VPCにVPN接続し、VPC内のインスタンスとIPv6ネットワーク配下のサーバとを通信(連携)できるようにしてみたログです。 IPv6を使う上での前提条件/要件 まず、今回話をする上での前提…

Linuxで2つのファイルの共通行を出力する

機会があったので、調べてみました。 2ファイルの差分はdiffコマンドで取るけど、その逆の共通している部分はどうやって取得するのか。エレガントなやり方はやっぱりgrepコマンドを使うのかしら? 前提 $ diff -c5 {a,b}.txt *** a.txt 2013-08-28 18:54:49.…

tracerouteの色々

インターネットのネットワークに多少なりと興味がある方なら、指定の目的地までの経路探索をしてくれる、みんな大好きtracerouteコマンド。 そんなtracerouteの色々をメモしておきます。 tracerouteの仕組み 既に多くの解説サイトがあるので、そちらに譲りま…

AWS Command Line Interface(awscli)を使ってみた

今更な話題ではありますが、Pythonで作られたAWS Command Line Interface(aws-cli: 従来のJavaで動いていたEC2 API Toolsとは別物)を入れて動かしてみました。メモ的な感じで残しておきます。aws-cliは、pipで管理できるし、これ1つで複数のAWSサービスを扱…

muninサーバのチューニングの考え方

色々見ていたら、ちょっと思うところがあったので、tweetしようと書き始めたんだけど、長くなってしまったのでブログに残しておこうと思う。 muninのサーバは、対象ノードが多くなってきたりして、処理が増えてくると、多くのケースでネックになってくるのは…

Linuxサーバがディスク容量不足になった!何か消さねば!ってなった時にどう対処するか

とりとめもなく書いてみる。主にルーキー向けです。 サーバの運用とかやっていると、不定期ではあるが、たまにタイトルのようなディスク容量が逼迫する話題に直面します。 まぁ、それが起こるのは一旦良いとして、みんなこういう時、どうやって調べているの…

Linux/Mac/Windowsでハードウェア構成に関する情報を調べる

サーバ/クライアントPC問わず、今使っているマシンのハードウェア構成がどのようなものかをOS上で確認したくなることもあるでしょう。 そんな時にお手軽に調べられる方法を、たまーにググったりするので、Linux/Mac OS X/Windowsの3つのOSの場合の調べ方をこ…

Chef 11 で Chef Server WebUI を使えるようにしてみる(chef11アレコレ)

昨日の「Chef 11 での client/server/knife のセットアップ手順(+α)」のエントリの続きです。 Chef ServerとClientは基本的にRESTなHTTP APIを介してやりとりを行うのですが、ChefにはServer APIをGUI(ブラウザ)で操作できるchef-server-webuiが標準でついて…

Chef 11 での client/server/knife のセットアップ手順(+α)

遅れながら、Chefの新しい11系のバージョンを触ってみました。 つまづいた途中経過を含めて、セットアップのログや動きで気付いた事を簡単に残しておきます。尚、今回使ってみた実行環境は、CentOSの6系です(Linux)。 結論から申し上げますと、Chefの新しい…

Amazon EBS の性能ベンチマーク その3 (Provisioned IOPS編)

さて、またまた昨日のエントリ「Amazon EBS の性能ベンチマーク その2 (Standard-Vol増量編)」の続きです。ここまでの経緯は以下。 Amazon EBS の性能ベンチマーク その1 (Standard編) Amazon EBS の性能ベンチマーク その2 (Standard-Vol増量編) ここまでの…