ホーム » 2012 » 6月 » 26

日別アーカイブ: 2012年6月26日

2012年6月
« 5月   7月 »
 12
3456789
10111213141516
17181920212223
24252627282930

最近の投稿(電子情報)

アーカイブ

カテゴリー

監視サーバを増やしてみた

UPS設置の単純ミスで、サーバが動かなくなったり していたため、改めてサーバ監視 nagios3 の設定を 確認し、自分の管理している他のサーバの監視設定などを増やしてみた。

ちょいと、表示アイコンなども見直して、 解かりやすくしてみた。 Debian アイコンと Tux君が自分の管理しているサーバ。

1206262106_624x467.png

UPSがおかしいと思ってたらバッテリ配線が…

昨日、サーバ監視ソフトが異常を知らせてくるので、確認したら UPSがフリーズしてる。給電されていないし、パネルのボタンを押しても無反応。 しかたがないので、落ちたサーバなどを一時的に別コンセントにつないで 起動させ、一度完全放電させて壊れていないか確認してみた。

完全放電させたら、復活してくれて万々歳なんだが、 先月にも同じように給電が止まってサーバが落ちたし、 改めてUPSの機能を確認。 すると、UPSの横に貼られた黄色い目立つシールに、 "STOP/HALT Connect Battery"と書いてあるじゃん。 UPSを買った時には、STOP/HALTの文字だけみて給電を止める時の注意書きと 勝手に誤解していたけど"Connect Battery"とな。 しっかりシールを剥がして確認すると、UPS内部のバッテリーの配線が "安全のために"抜いてある….(x_x; ということは、今まではUPSといっておきながら、単なる大きなコンセント状態。 停電・瞬停であれば、そのまま落ちてあたりまえ。

あまりにも恥ずかしいミス….

UML構造図

前回の授業の締めで説明をしていたUMLについて、 本格的に説明を行う。

UMLは、OOD(オブジェクト指向デザイン)などからOML(オブジェクトモデリング言語)などを経て、UMLへと変化していった。 UMLでは、大きく分けると構造図・振る舞い図に分類され、 それぞれについて、さらに具体的な図の書き方が決められている。

  • 構造図
    • クラス図とオブジェクト図
    • コンポーネント図
    • 配置図
    • パッケージ図
  • 振る舞い図
    • ユースケース図
    • アクティビティ図
    • ステートチャート図(状態遷移図)
    • 相互作用図
      • シーケンス図
      • コミュニケーション図

クラス図とオブジェクト図

クラス図は、クラスの中身と他のクラス間の関係を記述するための図。

1つのクラスは、上段にクラス名・中段に要素・下段にメソッドを記載する。 各要素・メソッドの前には、限定子として("-":private,"+":public,"#":protected)などを 記載する。

コンポジションと集約

クラスと他のクラスの間の関連は直線で表し、多重度やその役割を書き添える。 継承は白抜き△矢印で表現し、そのクラスの基底クラスに向かって矢印を描く。 関連においてオブジェクトの寿命が同じ(クラスの要素に別要素が包含される)場合は、 コンポジション(合成)と呼ばれ、黒塗り◆で矢印を描く。 寿命などが別であり、ポインタで結合されるような関係は集約と呼ばれ、 白抜き◇で矢印を描く。

class Engine {
// エンジン
} ;
class Tire {
// タイヤ
} ;
class Car {
Engine engine ;     // コンポジション
Tire*  wheel[ 4 ] ; // 集約
} ;

is-a,has-a

クラス構造で派生で表現できるような関係 例えば、基底クラス:どうぶつ、から派生した哺乳類とか鳥といったクラスを 考えると、"哺乳類はどうぶつである"という言い方が可能であり、これを"is-a"の関係と呼ぶ。 一方、"哺乳類は足を持っている"という言い方ができる場合は、"has-a"の関係と呼ばれ、 "足"というクラスを、集約なりコンポジションで実装することになる。

class Animal {
// どうぶつ
} ;
class Mammalia : Animal { // is-a 関係,派生で実装
// 哺乳類
} ;