第7回コンテナ型仮想化の情報交換会の発表資料です。 参考となる情報にはPDF中からリンクをしていますが、資料中のリンクは Speaker Deck 上ではクリックできないので PDF をダウンロードしてご覧ください。(2015-06-25スライド更新しています)
(注記:6/9、いただいた翻訳フィードバックを元に記事を修正いたしました。) 今回の記事は毎秒300万ものリクエストを処理できるほど強力で高性能なWebクラスタの構築についてのパート1になります。まず初めに、あまり多くはありませんが、私がこれまで使用したことのあるロードジェネレータツールをいくつか紹介します。私のようにてこずって時間をかけてしまわないよう、今回の記事が理解の手助けになれば幸いです。 ロードジェネレータはテストを目的とした数種類のトラフィックを発生させるプログラムです。それによって高負荷においてサーバがどのように動いているか、そのサーバの弱点はどこなのか、などが見えてきます。負荷テストを通じてサーバの限界を知ることは、サーバのレジリエンシーを測定する最適な方法であり、あらゆる問題に対する準備の手助けにもなります。 ロードジェネレータツール 負荷テストをする際に頭に入れておくべ
When an application puts a socket into LISTEN state using the listen syscall, it needs to specify a backlog for that socket. The backlog is usually described as the limit for the queue of incoming connections. Because of the 3-way handshake used by TCP, an incoming connection goes through an intermediate state SYN RECEIVED before it reaches the ESTABLISHED state and can be returned by the accept s
唐突ですが、一回目の記事を書きます! 今回は、主にウェブサーバー、具体的にはLinuxのSO_REUSEPORT(プログラミング言語としてはC言語)の話題になります。背景として、弊社では、広告配信がいわゆるネイティブアプリケーションであるため、ウェブサーバーの開発を行っているといったことが挙げられます。そもそも今回の記事を書いたきっかけは、弊社でSO_REUSEPORTを使用し始めており、それについて紹介したいと考えたからです。 特にC10K問題については TheC10kProblem - 「C10K問題」(クライアント1万台問題)とは、ハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする問題のこと が詳しいので今回は説明を省略します。 また、Linux(正確にはKernel 3.9以降)におけるSO_REUSEPORTについては、 或るプログラマ
Kazuho's Weblog: jailing - chroot jailを構築・運用するためのスクリプトを書いた virtuald + ipalias + cgroup + これで快適に「そこそこ隔離したサービス環境」作っていきましょー / “Kazuho's Weblog: jailing - chroot jailを構築・運用するためのス…” http://t.co/aweVwa9kDX— MATSUMOTO, Ryosuke (@matsumotory) 2015, 5月 14 まずは昨日サクッとこういうのを作られたkazuhoさんのjailingを見ていて、こういうのやっぱり面白いなー素晴らしいなーと思いつつ、そういえば僕もmrubyでこういうの書くとか宣言していたなーというの思い出しました。 mruby-cgroup、mruby-capability、mruby-criuがで
タスクレット PCI デバイスの情報を取得する /proc インタフェースを使う Rio's Laboratory Contents 【デバイスドライバ/組み込み系】 Linux Kernel Module programming (Kernel 2.4)(@nifty) Android SDK programming (@nifty) AVR (ATmega8535) programming (C言語)(@nifty) 【UI/サウンド】 Xlib Programming Lectures (@nifty) Linux Sound programming with OSS API (@nifty) 【Java】 EJB3.0の勉強 (@nifty) Java LDAP client programming (@nifty) 【公開ソフトウェア】 Space Maze (Shooting
Download A kernel-level SSL patch for the Linux 2.6.14.2 kernel and OpenSSL 0.9.7i A kernel-level SSL patch for the linux 2.4.18 kernel and OpenSSL 0.9.6g Sample programs The patched Linux source trees are also provided: linux-2.6.14.2-kssl.tar.bz2 (41 MB) linux-2.4.18-kssl.tar.gz (34 MB) You may use these patches with other versions of linux kernel and OpenSSL and other architectures although you
Background on kernel development So you want to be a Linux kernel Hacker? Read what the job is really like. CareerAdvice for people who want to get a job hacking the kernel Getting started on kernel hacking Kernel history Kernel release process KernelReleaseProcess Tools used in kernel development KernelHackingTools Sending patches First patch tutorial. Setting up your mail client to not mangle pa
once again, i need your help to my kernel module. I have implemented an client module, but each time, connect function return errno=110 (Timeout). I don't understand why ? To test this module, i've started netcat in listen mode (nc -vl -p4242). Do you have any suggestion about this mystical bug int init_module(void) { struct socket* sock = NULL; struct sockaddr_in* dest = {0}; int retVal = 0; dest
Makefile �O��yU obj-m += tcp_svr_sample.o all: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules clean: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clea tcp_svr_sample.c 0ƕ�yU #include <linux/kernel.h> #include <linux/module.h> #include <linux/init.h> #include <linux/slab.h> #include <linux/kthread.h> #include <linux/errno.h> #include <linux/types.h> #include <linux/netdevi
2009/6/23 更新( Debian5 での準備追加) 2008/4/29 更新(ブロックデバイス追加) 2008/3/18 作成 目次 [1] はじめに [2] 準備 [3] 簡単なモジュール [4] モジュールパラメータ [5] procファイルシステム [6] キャラクタデバイス [7] ブロックデバイス [1] はじめに Linux(kernel-2.6系)のカーネルモジュール(ドライバ)を作成する。 テストした環境は次の通りである。 OS: Fedora7 カーネル: kernel-2.6.23.15-80.fc7 OS: Debian5 カーネル: kernel-2.6.26-2-686 [2] 準備 (2-1) Fedora7,Fedora8 の場合 Fedoraでカーネルモジュールを作成するにあたり、まず fedora wikiを参考にしながら カーネルモジュールをコン
みたいなやつ。 syscall.Uname()でsyscall.Utsnameを取得し、そのうちのMachineを文字列として取得する。 package main import ( "fmt" "os" "syscall" ) func main() { m, err := machine() if err != nil { fmt.Println(err.Error()) os.Exit(1) } fmt.Println(m) os.Exit(0) } func machine() (string, error) { u := syscall.Utsname{} err := syscall.Uname(&u) if err != nil { return "", err } var m string for _, val := range u.Machine { m += string
[go-nuts] How do i get the information of operating system if its 32bit or 64-bit How do i detect if its Windows or Linux or Mac then is it 32-bit or 64-bit? I only getting the OS name code: package main //import "os/exec" //import "syscall" import "runtime" import "fmt" func main() { fmt.Println(runtime.GOOS) // windows /* cmd := exec.Command(cmd, arg) err := cmd.Start() if err != nil { println("
□saslauthdと古い(短い)shadow 古いshadowは、暗号化されている文字列が最近のより短い。 たいていは問題ないのだが、サーバーのシステム一新でsaslauthd(sasl2)とか使おうとすると、せっかくデータを新しいサーバーにrsyncしてめでたしめでたしと思っていたら、いざ移行して運用しようとすると、testsaslauthdとかでテストをしても size read failed とか言われて、ログにも mail kernel: saslauthd[3421]: segfault at… とかでて悲しくなっちゃいます。原因はshadowの暗号化文字列が短いからみたいで、ココで例えば誰かのパスワードを改めてpasswdで打ち直したりして長い文字列にすると、testsaslauthdでもさっくりと 0: OK “Success.” とかになってくれる。 ユーザーが少ないとか
以前に、辞書攻撃に使う元ネタの辞書ファイルという記事を書いた。その中で、Linuxのpasswdコマンドが利用しているのは /usr/share/dict/linux.words だということを書いたけど、この辺については色々とややこしいバックグラウンドがあるので詳しく書いてみたい。ちょっとググってみたけど、ここについて突っ込んで書いてある日本語の記事はネットには存在しないと思う(たぶん)。 なお以下記事は、CentOS 6.4で調査したものです。他のディストリビューションでは細部が色々と違っているかもしれません。 passwdコマンドと辞書ファイル passwdコマンドでパスワードを変更する際、辞書に載っている言葉をパスワード設定しようとするとこういうエラーが表示される。 そこで、この"BAD PASSWORD: it is based on a dictionary word"がどうや
UbuntuとCentOSどっちを選ぶべきか、というのはよく聞く話だが、UbuntuとCentOSどっちがいいの?正しいサーバOSの選び方 - lamichの日記 - 海外でイラスト制作を行う社長のブログというブログで、「圧倒的な差をつけて世界で一番使われているサーバーOSがUbuntu だ」という理由でUbuntuがおすすめされている。シェアが多いもの、今後シェアが伸びそうなものを選ぶというのは、確かに選択の理由としては一理ある。 だがしかし。シェアを調べるのにGoogleトレンドを使うのはどうなのよ。 このブログでは「centos server」という単語と「ubuntu server」という単語をGoogleトレンドで調べるとubuntu serverの方が圧倒的、だからシェアも圧倒的と主張しているのだが、これを信じるならubuntu serverよりもwindows serverの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く