タグ

ブックマーク / thinkit.co.jp (28)

  • エラーログで障害原因を突き止めろ!

    障害対応の前に 第3回の今回は、実際にエラーログが記録された場合にどのような対応をすればよいか、いくつかシステムログに記録されるようなローレベルのエラーをピックアップし、説明します。 ですがその前にまず、ログの監視とそのツールについて簡単に説明しておきましょう。障害は、いつ発生するか分かりません。しかし、いつ発生するか分からない障害に対応するために、四六時中コンソールの前に張り付いている訳にもいきません。また、四六時中コンソールに張り付いていたとしても、数多く存在するログファイルすべてに同時に目を通し、障害を示すログに漏れなく対応するのは困難です。 そこで、登場するのがログ監視ツールです。ログ監視ツールを使うことで、エラーログの検出と通知を自動化できます。ここでは、代表的なログの監視/解析ツールとして、以下の3つを紹介します。 logwatch swatch logcheck なお、ここで

  • エラーログで障害原因を突き止めろ!

    エラーログに対応する~OOM Killer編 続いて、/var/log/messagesに図2-1のようなログが記録された場合の対応を考えてみましょう。このログはOOM(out of memory) Killerによりhttpdプロセスが強制終了されたことを示すログです。 OOM Killerとは、システムがメモリ枯渇すると、稼働中のプロセスを強制終了させて空きメモリを確保するLinuxカーネルの仕組みで、メモリ枯渇によるシステム停止を防止するために用意されています。 このログが記録された場合、まず必要になるのはプロセスの存在確認です。OOM Killerは比較的重要なプロセスも容赦なく強制終了させてしまいますので、必要なプロセスが存在しているかを確認する必要があります。 図2-1のログではhttpdが終了させられているので、以下のコマンドを実行しhttpdプロセスの存在を確認します。 $

    エラーログで障害原因を突き止めろ!
  • モジュールでOpenIDを簡単に実現!

    シングルサインオンとOpenID オンラインバンキング、ネットオークション、ブログなど、現在では多くのサービスがWebアプリケーションで提供されています。個人を認証するには、各Webサイトで発行された、ユーザーIDとパスワードを使用するのが一般的です。当然、使用するWebサイトが異なれば、ユーザーIDとパスワードも異なり、管理が煩雑になります。またそれぞれのWebサイトにアクセスする度に、毎回ユーザー認証を行う必要があるなど、操作に不便と不満を感じる人は少なくありません。 それを受け、認証システムを一元化するなど、以前から認証手続きを簡素化するための試みは行われており、その成果はSSO(Single Sign-On:シングルサインオン)などの技術に還元されています。 SSOを利用すればユーザー認証を一度行うだけだけで、許可されているすべてのサービスを利用できるようになります。現在SSOを実

    gouei2001
    gouei2001 2017/01/18
  • [ThinkIT] 第4回:スパムメール対策付きメールサーバを立ち上げる (1/3)

    最終回となる今回は、CentOS上にスパムメール対策を講じたメールサーバを構築する例を紹介します。ここで取り上げるメールサーバにPostfixを利用します。Postfixは通常CentOSにデフォルトではインストールされていません。したがって、下記コマンドを実行してインストールする必要があります。 またPostfixを標準で使用する場合、sendmailがインストールされている時になんらかの問題が発生する可能性があります。そのため、あらかじめアンインストールしておくことをお勧めします。アンインストールするには下記コマンドを実行してください。

  • 実践Ruby on Rails 4 現場のプロから学ぶ本格Webプログラミング

    Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.

  • 監査ログをいかに取得し活用するか

    はじめに 連載も第4回を迎えました。今回が最終回になりますが、第1回から第3回までの間、アカウントと認証、権限管理、暗号化といった、データベースの安全性を向上するための施策について解説がありました。これらは予防策であり、事件・事故の発生防止に大きく貢献します。 今回は最終回として、「監査ログ」について説明します。発生した事件・事故内容を正確に検知する「事後対応」の施策として活用するだけでなく、兆候をつかむ事で予防にも役立てる事ができますから、これもセットで対策をする事で相当の安全性が期待できると考えています。ぜひご一読ください。 なお、「DBSCが解説!データベースセキュリティ」というタイトルにもかかわらず、今回はデータベースに割く文字数が少なめですが、データベースのログを取得するだけでは「監査ログ」を活用する事ができないという事をあらかじめご理解ください。 稿では次の内容を順番に解説

  • データベースに関わる暗号化を考える

    1.データベースと暗号化 データベースにかかわる暗号化については、その対象とする脅威とその対策によって以下のようなポイントがあります。 ネットワーク上の盗聴に対して通信経路の暗号化を行う OSレベルでのファイル盗難、バックアップメディアの盗難などに対して格納データの暗号化を行う。 バックアップメディア内のデータのみ暗号化を行う。 「2.」と「3.」は似ていますが、データベースを取り巻く実際の脅威と、既に実施されている各種のセキュリティ対策を合わせて考えたとき「稼働しているサーバー自体は十分保全されていてリスクは小さいので性能優先にしたいが、バックアップメディアの輸送中や倉庫管理などについては対策が必要」といったような場合に「3.」を選択するケースもあると考えられます。 今回はこの中で特に「2.」の「格納データの暗号化」について取り上げてみたいと思います。 2.データベースの暗号化が対応する

  • 各Webアクセスログ解析ソフトの機能比較

    可能(1月から12月の1年間を対象にグラフ表示される。訪問者数、訪問数、ページ数、件数、バイト数が集計される) 可能(最終月から過去12ヶ月を対象にグラフ表示される。Sites、Kbytes、Visits、Pages、Files、Hitsの月別集計がされる。他に1日あたりの平均値も表示される)

  • そのやり方では生産性は上がらない!

    生産性の高い言語とは? 今回はプログラミング言語の生産性に焦点を当ててみます。生産性の向上を目指す時、言語は何を選べば良いでしょうか。生産性が高いことは言語のメリットの1つのとなるため、最近よく使われる言語はどれも生産性の向上を考慮しています。よって、それぞれの言語の持つ生産性の方向性を考えて、開発に合うものを選択することになります。言語にはそれぞれ特徴があるため、一概に順位を付けることはできませんが、今回は、4つの言語をピックアップしてそれぞれの生産性についてみてみます。 1つ目がJavaです。Javaはクライアントアプリケーションや大規模サーバーの構築、携帯電話のアプリケーションなど、C言語の代替としても幅広く使われている言語です。C言語に比べると、プラットホーム依存のコードが必要ないことや、メモリ管理の煩雑性がないことから、より少ない時間でバグの少ない高品質な開発ができると言われてい

    gouei2001
    gouei2001 2015/04/30
  • [ThinkIT] 第1回:プロジェクト管理力を強化するための具体的プラン (1/3)

    最近、日の国際競争力は低下傾向にあると言われています。家電や自動車、ゲームなどまだまだ元気な産業もあるでしょう。しかし、造船や鉄鋼、半導体のようにかつては花形だったのに、その地位を奪われつつある産業も少なくありません。まして、建設・土木業やIT産業は、国内需要に甘んじて努力を怠り、一度も国際競争力を持てる水準になったことがありません。 IT業界の一員として、現在の国際競争力のなさに非常に歯がゆい思いがしています。しかし、なんとか巻き返しをと考えてみても、新技術の創造性、要素技術の保有、開発生産性、そして仕様や契約面でも、なかなか勝てる部分が思い当たりません。IT関連技術やソフトウェア製品は、米国やイスラエルなどの海外製品に圧倒され、残った労働力も中国やインド、韓国技術者たちに脅かされつつあります。 そんな中、唯一これが突破口になるのではと期待しているのが「プロジェクト管理」です。プロジ

  • 「Nagios」「Hobbit」「ZABBIX」「Hinemos」を徹底比較 | Think IT(シンクイット)

    コストメリットを確保するオープンソース/フリーソフトウェア 近年、IAサーバの価格が非常に安価になり、LinuxWindowsを用いたシステムが普及しています。IAサーバを採用したシステムでは、ス ケールアウトを行うように設計することでハードウェアのコストメリットが生まれます。しかし管理するサーバ台数が増加してしまうため、管理コストはそれに 反して増加する傾向があります。 システム全体を効率よく管理するためには、まずサーバのハードウェアリソースやネットワーク、OS、アプリケーションなどの状態を適切に把握できる ことが重要になります。そのため、常にシステムの稼働状況のデータを収集・監視する「監視システム」が必要とされています。 大規模システムではシステムを監視するために、大手ソフトウェアベンダーが販売する統合管理ツールを用いたり、データセンターが提供する監視サービ スを利用することが一般的

  • [ThinkIT] 第2回:MyISAMとInnoDB (1/3)

    今回は、MySQLのストレージエンジンの中でも特に有名な「MyISAM」と「InnoDB」の2つを取り上げます。MyISAMはMySQLのデフォルトストレージエンジンで、ストレージエンジンを指定せずにテーブルを作成するとMyISAMが選択されます。もう一方のInnoDBエンジンは、MySQLに豊富なトランザクション機能を提供するストレージエンジンとして有名です。 まずはそれぞれのテーブルファイルの構造について解説し、最後にInnoDBのトランザクションについて解説します。 各ストレージエンジンのファイル構造を説明する前に、前知識としてMySQLのディレクトリ構造について説明します。 MySQLのデータベースディレクトリには、バイナリログと呼ぶデータベースの更新情報を格納するファイルと、2つのサブディレクトリが存在します(図1)。 「mysql」ディレクトリには権限テーブルと呼ばれるMySQ

  • Pythonで作られた便利なコマンドラインツール MySQL Utilities

    MySQL Utilitiesならではの注意点 MySQL Utilitiesは従来のコマンドラインツール群とは違い、以下のような記述で接続先を指定します。 これは、従来のコマンドラインツール群が主に1つのMySQLサーバーを対象として動作するものなのに対して、MySQL Utilitiesは2つ以上のMySQLサーバーを対象として動作するものが多いため、このような記法になっています。 [MySQL Utilitiesの記法] --server=ユーザ名:パスワード@ホスト名:ポート番号 [MySQL コマンドラインツール群の記法] --user=ユーザ名 --password=パスワード --host=ホスト名 --port=ポート番号 なおWindows環境ではローカルホストとしてlocalhostと127.0.0.1のどちらを指定しても同じですが、LinuxやUNIXではホスト名に対

    Pythonで作られた便利なコマンドラインツール MySQL Utilities
  • 双方向通信を実現する代表的な技術

    はじめに 今回から全4回でリアルタイムWebの現状をとらえていきたいと思います。1回目となる今回は、リアルタイムWebについての概要です。 リアルタイムWebとは、データが集約されているサーバーの情報をリアルタイムで参照できる仕組みです。現在のWebシステムの場合、リアルタイムでサーバーの情報を得ようとすると、定期的にサーバーに問合せを行う必要があります。具体的には、クライアントスクリプトでリクエストを生成し、タイマーを使ってリクエストを投げるAjaxやMetaタグのリフレッシュ機能で、ブラウザからリクエストを定期的に投げるポーリングといった技術を使います。 これは、従来のWebシステムがHTTP通信を使ってクライアント、サーバー間の通信を行っているためです。 HTTP通信では、リクエストに応じてレスポンスを返すという1往復の通信の安全性を確保するための通信手順がとられています。そのため、

  • Pythonで作られた便利なコマンドラインツール MySQL Utilities

  • tcpdumpを使いこなす!

    tcpdumpで使用できるコマンドオプション TCPDUMP(http://www.tcpdump.org/)、MicroOLAP TCPDUMP for Windows(http://www.microolap.com/products/network/tcpdump/)で共通で使用できるコマンドオプションは以下の通りです。 tcpdump [-adeflnNOpqRStvxX][-c count][-F file] [-i interface][-r file][-s snaplen][-T type][-w file] [expression] ここでは、これらのうち、tcpdumpでよく使用されるコマンドオプションについて記述します。 1つ目が-lです。-lオプションは、tcpdumpの出力結果をパイプ(|)を通じてほかのプログラムへ渡す際に必要となるオプションです。 2つ目が-n

  • [ThinkIT] 第2回:5分でXAMPPをLinuxにインストール (1/4)

    「XAMPP」は非常に手軽にWebアプリケーションの動作に必要なアプリケーションを一度にインストールできるパッケージです。今回はこのメリットを体感するために、実際にXAMPPをLinux環境にインストールする方法について紹介します。 Linux版のXAMPPをインストールするには、最低限、以下のような環境が必要となります。 OS Linuxが完全に動作する環境(Ubuntu、SUSE、RedHat、Mandrake、Debianでテスト済み) メモリ容量 64MB以上 ハードディスク空き容量 200MB以上

  • [ThinkIT] 第5回:Federatedエンジン (1/3)

    今回は「Federated」ストレージエンジンを取り上げます。Federatedエンジンは、MySQL 5.0から提供された非常に新しいエンジンです。今回は、Federatedエンジンの特長や動作について解説します。 英単語の「Federated」を直訳すると「連合した」といった意味になります。この意味の通りFederatedエンジンは、このエンジンを動作させるMySQLサーバ単独で動作するものではなく、他のMySQLサーバと連携して動作するエンジンです。 Federatedエンジンは、テーブルデータをFederatedエンジン自身が動作するMySQLサーバ(Federatedではこれをローカルサーバと呼ぶ)のデータベース内に格納せず、ネットワークに接続された他のMySQLサーバ(リモートサーバ)上のデータベース内に格納します。よって、Federatedエンジンが動作するローカルサーバ上に

  • 開封率の高いデコメールでメルマガ配信!

    デコメールを取り巻く環境 メルマガの中でも開封率が高いと言われるデコメール(デコメ)において、企業がユーザーに向けて配信するデコメを対象に、基的な作り方と嫌われにくいデザインテクニックを実践的に紹介します。 携帯端末に送られるデコメールは、新しい技術ではなく、古くから存在するHTMLメールを携帯にも送信できるようにしたもので、画像やFlashを掲載でき、通常のテキストメールと比べて豊富なデザインが特徴のため、10代から20代を中心に利用されています。 2007年に発表されたデコメールに関する利用調査(http://www.imjmobile.co.jp/news/72.html)によると、約85%の利用者がデコメ付きメルマガを受信していて、テキストメールに比べ、「印象に残る」「面白い」など、好意的な印象をもつユーザーが多いことが分かっています。このようにテキストメールとはひと味違うデコメ

  • [Think IT] サーバが重いってどういうこと? (1/3)

    サーバが重いってどういうこと? 著者:ウノウ  尾藤 正人   2007/10/4 2007年10月の連載ランキング1位(一覧を見る) サーバ管理者だけではなく誰でも一度は経験したことがある「サーバが重い」という現象。一言で「重い」というのは簡単ですが、重いというのは具体的にどういうことなのでしょうか。 ここでいう重い・軽いは単一のベクトルで判断できるような簡単な代物ではなく、様々な要素によって発生する現象です。処理が重いからといって闇雲にハードウェアを増強するのは賢いやり方とはいえません。例えば、メモリ不足が高負荷の原因なのに、CPUを高速なものに変えても効果はほとんどないでしょう。 このような無駄な投資を避けるためにも、負荷の原因を特定して素早く対応策を講じるのはサーバ管理者にとって重要なスキルになります。記事ではサーバ負荷の特定の仕方と対策の仕方について、簡単な概要を説明します。