ぼちぼち

Zabbix中心の技術ブログ

Zabbix ServerーAgentの疎通は出来ている状態でServer側の設定を変更する検証

検証内容

Zabbix ServerーAgentの疎通は出来ている状態でWebGUI上のホスト名を変更し、取得データを確認

 

結果

アイテムは有効になったまま、

・アクティブチェック以外はそのまま取得できる

・アクティブチェックはアイテムのステータスが有効のまま、データが取れなくなる

PRIMARY制約に引っかかったのにINSERT出来てしまった話(未解決)

 

ーーーPRIMARY KEYに引っかかったけど、INSERTできてしまったーーー

 

そんなこと起こるわけないと誰もが思うだろうし、実際に起こってはいけない。

しかし、何故か起こってしまった。しかも、登録されていないデータに対して制約が発生し、更にNULL値で引っかかっているわけでもなかった。

 

Googleに聞きまくったけど「そんなことありえない」以外の回答が見つからなかったので、原因はこれかなー?ぐらいの曖昧な状態だけれども残しておく。

 

 

« 経緯 »

DBにデータをINSERTしたら、PRIMARY KEY制約に違反しますという内容のエラーが出まくった。全件分出た。

しかし、INSERT実行前に対象データが存在しないことを確認しているため、制約違反が起こるわけがない。先に書いたようにググッても何も出てこない。しかも引っかかった値がNULLなら手掛かりはあるが、色々確認しても制約違反になりそうなところ(スペースやNULL制約)は一切ない。

 

そして、INSERTされるはずのないデータが全て正常に登録されている。これが一番の問題であった。

 

この現象は起きる日と起きない日があり、エラーが起きたとしても正常に動作してる(既に登録されているデータに対してINSERTをかけるとちゃんと弾いてくれていた)のでエラー文に恐怖する以外は何の実害もなかった。

 

 

« とりあえずの結論 »

キーボードの配列をUS配列にすると起きるので、JIS配列を使用する。

 

これだけ。

因果関係が全く分からないが、JIS配列を徹底したら制約違反が出なくなった。関係性が分からないので、まだ未解決とさせていただきたく.....。

 

 

更地からZabbix Serverを構築する時にやったことリスト(超初心者向け)

この記事は

更地にZabbix構築どころか、サーバからメール送信ってどうやるのレベルの人向け

 

Zabbixを普段から可愛がっている人にとっては常識中の常識のことを、自分が忘れてしまうので忘備録を兼ねて書いておく。

 

 

-------------------

 

 

CentOSがインストールされただけのまっさらな環境にZabbixServerを構築したので、とりあえず何をしたかリストだけ残すことにする。

 

コマンド等はほとんど先人達が落としていってくれたものを拾い集めて実行してるのでここから更にググると出てくるが、まっさらな状態だと見落としがちな設定があったりするので後々書いたらリンクしようかなと...。

 

とりあえずインストールしたもの
  • Zabbix3.0 (未更新)
  • php5.6 (未更新)
  • apache (未更新)
  • mariaDB (未更新)
  • postfix (未更新)
  • ipagp (未更新)

 

 

ファイアーウォールの穴開け

アウトバウンドに制限がなかったので、インバウンドだけ設定した。

 

Zabbix Server : 10051(Agentとの疎通) 80(http) 25(postfix)

Zabbix Agent : 10050(Serverとの疎通)

 

 

-------------------

 

 

ここまでやればとりあえずServerは動くと思う。

クラウド等を使用している場合は仮想サーバ上ではなく、クラウドの管理画面等でファイアーウォールの設定が必要な場合があるので注意してほしい.....。