サーバクラッシュ顛末。

先週月曜日、サーバをクラッシュさせてしまい、この一週間復旧作業をしておりました。ようやく安定してきたので、自戒を込めて顛末を記しておきます。

サーバのクラッシュと言えば、ハードディスクが㌧だ、なんてのが定番ですが、今回は完全に自分のオペミス。こういう事が今後起こらないように…。

某所の重要サーバがそろそろ劣化してきたので、更新のためにHPEのmicroserver Gen10を購入したのが事の始まり。もっとも、その前にTM200を買って外部向けサーバとして構築していたのもあり、その流れでmicroserverを目が向いたという流れもあったりします。このとき、「microserver Gen10 いいじゃん?俺も家でこれ使おう」と思ったわけです。

これまで、サーバ専用機ではなく、ある時はノートパソコン、ある時はコンパクトPC、ある時はベアボーンキットと色々な構成を試した結果、やっぱりサーバ専用機として売ってる機械が良いよねという(当たり前の)結論に至った訳です。ファイルサーバとして大容量のストレージを組むのにzfsを使っていますが、10台収容の裸族タワーをUSBで接続して変なエラーに悩まされたり(←失笑千万だね)と、あえてわざわざ荊の道を歩むのもそろそろ疲れたという理由もあります。

TM200はディスクが2台しか入らないのに対して、microserverはHDD4台収容+SSDという構成が取れるのも魅力でした。

microserver gen10 sambaでググってみると、何やら暗雲立ち込める記事を発見。まぁ、俺が使っているのはFreeBSDだし、何とかなるべ?と思ってHPEのサイトでポチッとな。そして機材が届いたのが先週の月曜日なのでありました。

その日は丸一日仕事を終えてかなり疲れて帰ってきた日。もっと落ち着いたときに作業すればいいものを、オモチャを買ってもらった子供が我慢できずに開けて怒られるのと同じ。そう、小学校の理科の時間に乾電池と豆電球の実験で教材を配られて、先生が「まだ駄目」というのに我慢できずに開封して怒られたあの日。秋葉原で部品を買ってもらい、我慢できずに帰りの電車の中で袋を開けて眺めたあの頃。何十年経っても自分は変わっていないのだということを再認識させられたのです。

★教訓:重要な仕事は手順を踏んで万が一に備えてから。後悔しても遅い。★

我慢できない私は、現在稼働中のサーバをおもむろに止め、現在稼働中のSSDを取り出し、新鯖にマウントして電源を入れたのでした。このとき、「microserver gen10は癖があってしんどいよ~、気を付けないとダメだよ…」というのを某所の鯖でさんざん体験して何とか動作にこぎつけた経験が、頭の中で赤信号を点灯させているのは感じつつ…。

★教訓:後悔先に立たず。昔の人は偉い。その通りだ。★

おもむろに電源を入れてOSが起動した…と思ったものの、ブート途中でハングアップ。CTRL-ALT-DELも効かず。仕方ないので電源ボタンをポチッとな…そんな事を数回繰り返し、「やっぱり後で落ち着いてやった方が良いね」と気付いたのだが時すでに遅かったのはその時気付いていなかった。

さて、渦中のSSDを元のマシンに戻して起動。

 

zfs:zroot/ROOT/default failed with error 2: unknown file system

ブートしない。┌|゚□゚;|┐ガーソ!

 

もちろん、長い経験のうちにブート途中で止まってしまうなんてことは何度も経験していたので、シングルユーザモードで起動してゴニョゴニョしたりとか、別の領域からマウントしてfsckするとか、それなりには経験したことがあったのだけど、今回のヤバいことはzfsが壊れて復旧できないという事態。

そう、ufsであれば何とかなったのに、zfsをシステム領域にしてそれが壊れるのは初体験。ググってみると、別のシステムでzpool importとかやってみると良いよ!って事なので、その日はヨドバシ・ドット・コムでSSDを発注し、次の日に繰り越すのでした。

次の日。つまり先週の火曜日。午前中出勤で、その際にFreeBSD12.0Rのインストールメディアを作って帰宅。嬉しいことにもうSSDが届いてる!

という訳で、FreeBSD12.0Rをインスコし、そこに旧SSDをマウントしてzpool importして…おや、出来ないぞ。なになに-fオプションで強制的にインポートか。

 

…できないorz

 

っちゅうーわけで、どうやら一筋縄ではいかないことが判明。他方、メールも送受信できなければDNSすら引けない状況はまずいので、新たにインスコしたFreeBSD12.0Rにて環境再構築。ひたすら色々なデーモンをコンパイルだの、dns設定データの再編集だの、ローカルPCに残っていたメールデータを退避させてからの新鯖へのインポートなど、それはそれは大変な作業に週一杯掛かっていたのでした。

  1. 現在実稼働していて、万が一にも㌧だらまずいディスクで危険なことはしない。
  2. バックアップはちゃんと取る。
  3. 疲れた時に大切な仕事をしない。

等々。どれも昔っから言われてることじゃん!下手したら論語にも書いてありそうなレベル。

 

子曰わく、疲労時に重要な作業をすることなかれ。

 

合掌。

電験3種過去問解説 平成30年機械問11

直流電源からスイッチングによって交流を作り出す装置はインバータと言います。

電力変換器のスイッチングデバイスは、当然ながらオン・オフ制御を行います。オン制御だけしか出来なければ電源が短絡されてしまいます。

バルブデバイスには、逆向きにダイオードを接続し、交流負荷のリアクタンス分に起因する逆電圧を還流させます。

交流電圧を変化させるためには、直流電圧源の電圧を変えることで交流側の波高値を変化させるか、あるいはスイッチングパルス幅を変化させるかという手段があります。この制御はPWM(Pulse Width Modulation)と呼びます。

以上より、答えは(5)です。

電験3種過去問解説 平成30年機械問10

毎分300㎥、全揚程10mということは、一秒あたりに必要なエネルギは位置エネルギmghより、

  • (300÷60)×1000×9.8×10=490[kJ/s]=490[kW]

ポンプ効率が80%という事から、必要な電力は、

  • 490÷0.8=612.5[kW]

従って、6台では若干不足し、7台必要となります。正解は(4)です。

電験3種過去問解説 平成30年機械問9

単巻変圧器は、(一次電圧と二次電圧の差)×(二次電流)の電力を供給します。

消費電力200kW、二次電圧6600V、力率0.8という条件から、二次電流は

  • (200000÷0.8)÷6600≒37.9[A]

と求まります。また、一次電圧と二次電圧の差は600Vですから、自己容量は、

  • 600×37.9≒22740[V・A]=22.7[kV・A]

となり、答えは(1)です。メチャクチャ簡単なラッキー問題です。

電験3種過去問解説 平成30年機械問8

a

誘導電動機は、固定巻線による回転磁界の中に、無給電で両端を低抵抗で短絡した回転コイルを配置したものです。回転コイルは、外部から与えられた回転磁界によって電圧が誘起され、電流が流れます。これは変圧器の一次巻線と二次巻線の関係と同じです。二次側の負荷抵抗値が滑りsによって見かけ上変化するのは誘導電動機ですから、(ア)は誘導電動機、(イ)は変圧器です。

b・c

電動機は回転コイルと固定コイルの間に発生する電磁力を取り出す装置ですが、これらをどちらも外部から制御できるのは直流電動機や同期電動機です。(誘導電動機は回転コイルに誘起される電圧を制御しにくい)

ここで、(エ)の出力に負荷角が関与するという記述より、(エ)は同期電動機、(ウ)は直流電動機と決定できます。以上より、答えは(3)です。

電験3種過去問解説 平成30年機械問7

ステッピングモーターは、与えられたパルスによって一定角度ずつ回転する構造になっています。これにより、パルス数で回転角度を制御でき、パルス周波数で回転速度を制御することができます。以上より、(ア)はパルス数、(イ)は回転角度、(ウ)は周波数です。ここまでの選択肢で正解は(5)と決定されます。

(エ)はステップ角。(オ)は、回転子の永久磁石による磁力が働くため、無通電状態でも外部からの回転トルクに対して保持力が働きます。

FreeBSD12.0Rとzfsでsticky bitが無効である件

某所のファイルサーバを更新するため、FreeBSD12.0-RELEASEとzfsを使ってsambaを動かす下準備をしていたのだけれど、

「メンバーの誰もが書き込めて、メンバーの誰もが読み出せて、しかしフォルダやファイルの削除だけは作成者本人しか出来ない領域」

を作ろうとしてもなかなか上手く行かない。

ああそうだ、こういう場合はディレクトリにsticky bitを立てるんだったなと思ってchmod 1777 sharedとかやっても、やっぱり他人にもファイルを削除できてしまう。

最初はsamba側の設定がおかしい(force user=誰々とかね)のかと思っていたけど、そうでもない。散々試行錯誤していたところ、zfsのACLの問題じゃないかと思い至った。

https://lists.freebsd.org/pipermail/freebsd-stable/2014-July/079340.html

キタ――(゚∀゚)――!! まさにこれですよ!

…なるほどね。従来のchmodじゃあダメなのね。(でも/tmp/はsticky bitが上手く動いてる気もするんだけどまあ気にしない)

という訳で、samba共有フォルダに対して↑のようにaclを設定してあげたら希望通りの動作になったような気がしています。(後方互換的にsticky bitが動作するようにしといて欲しいけどまあその辺りは色々と事情があるんでしょう)

以上、個人的( ..)φメモメモ

電験3種過去問解説 平成30年機械問6

まず、発電機の出力端子の電圧を横向きの基準ベクトル①として描きます。次に、負荷力率が遅れcos30°という条件から、①のベクトルから遅れ側に負荷電流Iのベクトル②を描きます。ここまでがまず第一段階です。

次に、「電機子電流が定格電流の40%」「同期リアクタンスが0.915p.u.」という条件から、同期リアクタンス(電気子巻線と出力端子の間に直列に入っているリアクタンス)の両端に発生している電圧を求めます。

百分率同期リアクタンスというのは、発電機が定格電圧・定格電流で運転している時の負荷のΩ値に対して、同期リアクタンスのΩ値が何%であるかを表しています。従って、定格負荷のとき、同期リアクタンスの両端に発生している電圧は定格出力電圧の91.5%であることが分かります。ここで、「電機子電流が定格電流の40%」という条件より、同期リアクタンスの両端に発生している電圧は定格運転時の40%の値であることが分かります。これを計算すると、0.915×0.4=0.366p.u.ですから、同期リアクタンスの両端に発生している電圧は出力電圧Vの0.366倍と求まり、これを③として描きます。同期リアクタンスの両端に発生する電圧は、流れる電流に対して進み90°となるため、図のようなベクトルになります。

ところで、30°・60°・90°の直角三角形の性質から、④の長さがV/2、⑤の長さが√3V/2であることが求まります。ここで③と④の長さを足すと0.866V=√3V/2ですから、電機子に発生している電圧V’は⑤と(④+③)とV’の直角三角形の関係となり、これは1:1:√2の45°の三角形と求まります。従って、相差角δは15°と求まります。

電験3種過去問解説 平成30年機械問5

(ア)…電機子巻線は、大電流を取り出すための出力巻線ですから、固定子側に巻きます。

(イ)…界磁巻線は、回転しながら電機子巻線に変動磁界を供給するために回転子側に巻きます。

(ウ)…水車発電機は、蒸気タービンに比べて低速度です。ここまでの選択肢で答えは(5)と分かります。

(エ)…蒸気タービンは高速度です。

(オ)…高回転の回転子は、回転軸中心から離れた場所に質量があればあるほど遠心力で大きな力を発生し、振動や破損の原因となりますから、円筒型とします。