DebianにZABBIXエージェントをインストールする

通常はソースからコンパイルするのが一番いいのでしょうが、簡単にしたいので、apt-getでやってみます。

/etc/apt/sources.listの編集

deb http://ftp.riken.jp/Linux/debian/debian/ wheezy-backports main
deb-src http://ftp.riken.jp/Linux/debian/debian/ wheezy-backports main
2行を追加する。注意としてbackportsを使用しています。

apt-getの更新処理を行う
# apt-get update

ZABBIXエージェントをインストール
# apt-get install zabbix-agent

/etc/zabbix/zabbix_agentd.confの編集
# vi /etc/zabbix/zabbix_agentd.conf

### Option: Server
#       List of comma delimited IP addresses (or hostnames) of Zabbix servers.
#       Incoming connections will be accepted only from the hosts listed here.
#       No spaces allowed.
#       If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally.
#
# Mandatory: no
# Default:
# Server=
Server=XXX.XXX.XXX.XXX

### Option: ServerActive
#       List of comma delimited IP:port (or hostname:port) pairs of Zabbix servers for active checks.
#       If port is not specified, default port is used.
#       IPv6 addresses must be enclosed in square brackets if port for that host is specified.
#       If port is not specified, square brackets for IPv6 addresses are optional.
#       If this parameter is not specified, active checks are disabled.
#       Example: ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
#
# Mandatory: no
# Default:
# ServerActive=
ServerActive=XXX.XXX.XXX.XXX

ZABBIXエージェントを再起動
# /etc/init.d/zabbix-agent restart

メールサーバの入れ替え(blowfish→SHA-512)

今までLinuxはOpenSUSEを使用してきた。

OpenSUSEはとてもいいディストリビューションですが、最近Debianを社内で多く使用してきて統一感を出すためにはすべてDebianにするのもいいと思い、メールサーバをDebianへ移行した。

情報システムはチームで行うものですので、なるべく同じ操作方法ができたほうがいいです。

OpenSUSEとDebianでは大きな違いはないと思っていたが以外に違いがある。

  • /etc/shadowのハッシュ暗号が違う OpenSUSEはblowfishでDebianはSHA-512
  • POP3またはIMAPのプログラム OpenSUSEはqpopperでDebianはdovecot

Debianでblowfishを使用するには、いくつかの設定変更が必要です。

blowfishの暗号を使うためにlibpam-unix2をインストールする。
# aptitude install libpam-unix2

設定をblowfishの暗号にする
# sed -i 's/pam_unix.so/pam_unix2.so/g' /etc/pam.d/*
# sed -i 's/md5/blowfish/g' /etc/pam.d/*
これにより、OpenSUSEで使用していた/etc/shadowがそのままコピーすれば使用できる。
ユーザーをすべて手入力するよりは簡単になります。

注意!!
この操作を行った後にrootのパスワードを再設定する事が重要です。
なぜならrootのパスワードがSHA-512でハッシュされている為、
ログアウトした後にrootで再度ログインしようとすると入れなくなります。

Debianにgoogle chromeをインストール

Debianにgoogle chromeをインストールする際の注意点を記載しておきます。

キーの登録を行います。

# wget --no-check-certificate https://dl-ssl.google.com/linux/linux_signing_key.pub
# apt-key add linux_signing_key.pub

/etc/apt/sources.listの編集
deb http://dl.google.com/linux/chrome/deb/ stable main
上記を/etc/apt/sources.listに追加する

aptを更新する
# apt-get update
インストール
# apt-get install google-chrome-stable

を行うとうまくいく。

 

FreeNASのアクセスが遅い(atimeを無効にする)

使っている内にアクセスが遅いことが分かってきた。ひとりで使っているうちはまだ気づかなかったが、各部署などで使用するとなんだか止まっているような感覚がしばしばある。

いろいろと調べてみると、atimeが関係するのではないかとわかった。

Windowsのクライアントでは無効にしても別に問題はないようですので、とりあえず無効にしてみることにした。

やり方はとりあえずZFSのpool名を調べる.

#  zpool status

pool: XXXXXX    <-- pool名
 state: ONLINE

# zfs set atime=off  XXXXXX

これでatimeは無効になった。

結果、アクセススピードの改善はされた。ただまだ何かあるような気がする・・・。

FreeNASがフリーズする(メモリ不足)

会社で使用しているFreeNASが朝になると停止するという現象が頻発した。なぜだろうと思いいろいろと調べた。

原因はZFS構成ではメモリが多く使用されメモリー不足になっていた。

HDD 2TB×3 のZFS(RAID-Z)で4TBにして、メモリが8GBとなっていた。大きな処理(バックアップなど)を行った時によくフリーズした。

panic: kmem_malloc: kmem_map too small

コンソールにはこのようなメッセージが表示され、停止している。

単純にメモリが足りないという事である。

メモリを8GBから16GBへ増設して対応した。

FreeNASを実際に運用する場合、メモリをなるべく多めに入れておきましょう。

Debianを生産実績入力用PCに使ってみる

各工程内でPCを設置して生産実績入力を行うという製造メーカーは多いと思います。

その時に使用するパソコンはWindowsOSがはいいているパソコンが多いです。実際私が勤めている会社でもそうです。

せっかくなのでLinuxを現場PCで利用できるのか実験を行ってみた。

ディストリビューションの選定はいろいろと悩みましたが、ここはDebianにしておきます。

理由としてアップデートが簡単で、情報量も豊富(?)である。いままでOpenSUSEを使っていたが、古いPCにはちょっと重い。

現場で使用する場合いくつか設定を行う必要がある。

・自動ログイン方法

# vi /etc/lightdm/lightdm.conf

[SeatDefaults]

autologin-user=user1   user1は自動でログインしたいユーザ名

・ブラウザの選定

通常FireFoxを選びたいところだが、スピードやHTML5など対応が優れているGoogle Chromeを選択した。

しかしgoogle chromeをインストールしようとするとエラーが発生してインストールできない。なので、chromiumを入れてみた。

# apt-get install chromium

パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています
状態情報を読み取っています… 完了
以下の特別パッケージがインストールされます:
chromium-inspector libspeechd2 libxss1
提案パッケージ:
chromium-l10n
以下のパッケージが新たにインストールされます:
chromium chromium-inspector libspeechd2 libxss1
アップグレード: 0 個、新規インストール: 4 個、削除: 0 個、保留: 0 個。
41.3 MB のアーカイブを取得する必要があります。
この操作後に追加で 111 MB のディスク容量が消費されます。
続行しますか [Y/n]?

Yを入力する。

chromiumではあるがほとんどGoogle Chromeと同じように感じられる。

出来上がったLinux(Debian)を現場パソコンと交換し、様子を見てみる。

結果は後ほど報告します。

生産管理システムの独自開発

会社は仕事がなく、2001年12月に前の会社を辞め、不況の嵐の中によくも決断したものです。しかし諦めず生産管理システムを一から開発する為、製造業の求人を探していました。失業保険が切れる3か月後、目的の生産管理システムを1から開発してほしいという製造業に辿りつきました。これは運命のような出会いです。

当時はクライアント・サーバ型のシステムが多く(SQLServer + VB6)、その会社でも同様のシステムを最近導入していました。すべての処理を完了するのに1時間以上かかるというものです。(今は自分で開発したプログラムで10秒で処理が完了します)

クライアント・サーバ型のシステムではなくWebアプリケーションで開発する場合を行うときに必要なのは、かっこいい言葉でいうとコンセプトである。

業務アプリケーションを作る際に私が行ったのは、以前の会社で使っていたシステムを真似ることである。

汎用機のシステムと同じような感じで操作や見た目にした。なぜなのか?中・大規模なシステムを作る際に必要なノウハウをWebアプリケーションでも真似ることで、少しでも使いやすいシステムができるのではないか?そんな感じがします。

しかしWebアプリケーションで不満も多くあります。リアルタイム性や操作性が悪いことです。しかし現在のブラウザではJavascriptやAJAXで補完する事ができるようになっています。

開発環境では言語がPHP4 DBがSQLServer 2000(現在はSQLServer 2008)になっています。

エディタは「PHPエディタ」を使用しています。これが一番楽です。   http://phpspot.net/php/phpeditor.html