やっぱりNTT東日本の「個人PC等点検」はやっちゃダメだと思う
先日、NTT東日本グループが従業員に対し、個人所有のPC等に会社指定の検閲ソフトを導入させてプライベートなデータの検査や、会社が指定したソフトウェアを利用できないようシステムに細工するセキュリティ向上施策を実施していたことが明らかになりSNSで話題になりました。
ntt-workers.net
(16.11.18 N関労東 秋闘要求書を提出
の項)
さらにその後、ITmedia が取材を行ない、同社は内容を否定しました。
しかし上記の記事には「いや、やっぱり検閲してんじゃん」、「(SNSで言われていたことは)だいたいあってる」などと多くのコメントが多く寄せられている通り、なにが「事実と異なる」のかいまいち見えません。そこで本エントリでは同社の社員に配布された資料や労働組合の提言を参考に何が行われているのか、さらにいくつかの判例を参考にそれは問題ではないのかを考えてみたいと思います。
なお当方は法の専門家ではないド素人です。合法性の正確な判断は行えず、またその責任も負えないことを予めご了承ください。また本記事で引用する各資料は表記の組織から公開されたオリジナルのものである前提で話を進めることをご留意ください。
続きを読むCisco Catalyst のTDR試験コマンドでポート故障を遠隔診断する
忙しい人向けサマリ
- リンク障害は現地での物理切り分けしかできずとてもつらい
- test cable-diagnostics tdr コマンドの結果が Fail もしくは Not completed になったら自装置のポート故障と判断できることを発見
- 判定率50%、誤検知率0%。範囲は狭いが信頼性が高く大変有用で障害対応時間が大幅短縮
こんにちは。とある通信会社の委託で壊れたルーターを取り替えるだけの簡単なお仕事をしている夜勤作業員です(エンジニアじゃないよ)。ふと思い出したので、私が新入社員のときに初め取り組んだ業務改善のお話をしたいと思います。
地味に面倒なリンク障害の切り分け
%LINK-3-CHANGED: Interface GigabitEthernet0/1 changed state to down %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/1, changed state to down
ネットワークを監視していると日常的に起きるリンク障害(リンクダウン・ポートダウン)。両装置がいまも稼働しているならば、その故障被疑箇所は主に装置Aのポート・装置Bのポート・それらをつなぐケーブルの3つが挙げられます。オプティカルなSFPであれば show interfaces transceiver
などのコマンドで光を出してる・受けてるが遠隔で確認できますし、SONET/SDHとかだったら show controllers sonnet
とやればアラートや統計値が確認でき、ある程度の推測が可能です。しかしUTPを使ったナイーブなEthernet (1000BASE-T等) ではこれといった有用な方法がありません。
となると現地でケーブルを差し替えてみたり筐体を交換してみたりして物理的に切り分けるしかないのですが、両装置で保守部門が異なったりしていて最初にどちらかが対応してダメだったらバトンタッチするやら、故障箇所が分かってからベンダに代替品を手配するやらで、緊急対応なのに直るまで8時間と平気でかかかったりします。しかも 1000BASE-T などの細いリンクはネットワークの末端、すなわちエンドユーザーの入り口であることが多く、それは大抵シングル構成でリンクダウンがサービス中断に直結するため速やかに復旧させなくてはなりません。余談ですがこのような場所には Catalyst 2960 や 3560 といったチープな機器が使われておりオンライン診断機能が貧弱・無い(POSTだけとか)のも痛いところです。
ケーブル試験コマンド?
なんかいい方法ないかな〜といろいろ調べていた矢先、ふと test cable-diagnostics tdr
というコマンドを見つけました。TDR (Time Domain Reflectometry) とは試験用のパルス信号を送り、反射して帰ってきた信号とその時間を分析することで伝送路の特性を測る手法です。ネットワークの世界ではどちらかというと光ファイバの減衰率を測定するOTDR (Optical TDR) のほうが有名だと思います。よく「パルス試験器」と呼んでいました。レイリー散乱とかフレネル反射とか懐かしい人いませんか?
さて、では実際に使ってみましょう。まず対象ですが Cisco の最も安価なスイッチである Catalyst 2960 シリーズの IOS 12.2 系でも動くので大抵のCiscoスイッチなら対応していると思います(ただし 100BASE-TX ポートを持つ一部機種(旧機種?)は非対応だったようなおぼろげな記憶があります)。次に実行方法ですが、 test cable-diagnostics tdr interface <インターフェース名>
というコマンドを実行してください。コマンドは何事も無く終了するので、試験が終わるまで5秒ほど待ってから結果を show cable-diagnostics tdr interface <インターフェース名>
コマンドで確認します。なお試験時はリンクダウンし通信が途切れるでご注意ください。
#test cable-diagnostics tdr interface GigabitEthernet0/24 #show cable-diagnostics tdr interface GigabitEthernet0/24 Interface Speed Local pair Pair length Remote pair Pair status --------- ----- ---------- ------------------ ----------- -------------------- Gi0/24 1000M Pair A 2 +/- 4 meters N/A Normal Pair C 2 +/- 4 meters N/A Normal Pair C 2 +/- 4 meters N/A Normal Pair D 2 +/- 4 meters N/A Normal
とこのようにUTP各ペアのケーブル長・ペアの組み合わせ(ストレート/クロス)・状態が確認できます。つまり名前の通りケーブルの状態を診断するコマンドなのですが、壊れた Catalyst 2960 でこのコマンドを実行してみたところ、おもしろい結果が出てきました。
#show cable-diagnostics tdr interface G0/24 Interface Speed Local pair Pair length Remote pair Pair status --------- ----- ---------- ------------------ ----------- -------------------- Gi0/24 1000M Pair A N/A N/A Fail Pair B N/A N/A Fail Pair C N/A N/A Fail Pair D N/A N/A Fail
Fail とでています。これはCiscoのコマンドリファレンスにも載っていない結果です。これは使えそうと直感し統計を取ってみることにしました。
続きを読むEC2 Auto Scaling にあわせて Zabbix でホストの自動登録・削除がしたいんですよ
こんにちは、通信会社で壊れたルーターを取り替えるだけの夜勤作業員、な、のですが、とある縁で今はサーバーの監視・運用代行業務(MSP)をさせてもらっています。
具体的には Zabbix を使ってクラウドにある顧客のサーバーを監視しているのですが、オートスケーリングを使っている案件ではスケールイン、すなわちインスタンスが terminate されると当然ながら通信が途絶えるので、Zabbix agent is unreachable やら unavailable by ICMP やらのポーリング系アラートじゃんじゃん鳴ってしまいます。これでは実務上も精神衛生的にもよろしくないので何とかしたいなあと少し考えてみました。
おそらく Auto Scaling のイベントを SNS で飛ばして Lambda でよしなにやる的なのが "ベストプラクティス" ってやつなのでしょうが、いかんせんクラウドを触り始めてまだ2ヶ月で勝手が分かってないので、とりあえず思いつく古典的手法を試してみます。
忙しい方は最後にあるデモ動画だけ見ていっていただければ幸いです。
スケールアウト時の自動登録は Zabbix におまかせ
Zabbix には標準でエージェント自動登録機能がついています。さらに設定ファイルにホストメタデータを書いておけば、案件やサーバー種別ごとに柔軟な処理が行えます。
今回の検証では Auto Scaling グループ用に "MySiteAS" という文字列をメタデータとしてマスターAMIに書いておき、Zabbixサーバー側でこれを検知するとホストの登録・ホストグループへの参加・各種テンプレートのリンクを自動で行う自動登録アクションを作りました。
参考:
スケールイン時の自動削除はいろいろたいへん
一方でホストが終了した際の処理は一筋縄ではいきません。監視システムはホストが応答しないのは何らかの障害が起きているのか、意図的にシャットダウンされたのか判断できないからです。しかし仮想サーバーであればそのマネージャーがVMの状態を知ってます。EC2 では AWS CLI や AWS SDK を使ってインスタンスの状態を取得できるので、Zabbix server 側でそれを利用できれば終了検知・ホスト削除ができそうです。
いろいろ試行錯誤してたどり着いたワークフローが次の通り。
- インスタンスIDをメタデータから取得し Zabbix API でホストマクロに登録
- AWS SDK を使って定期的にインスタンスのステータスを確認
- インスタンスが terminated になったら Zabbix API を使って Zabbix からホストを削除
職場でコーヒー会はじめました (デロンギ マグニフィカS導入)
こんにちは、とある通信会社の委託でネットワークの監視・保守をやっている作業員です(エンジニアじゃないよ)。 今回は職場にコーヒーメーカーを買って飲みものを共同購入する営みを始めた話をします。 夜勤を含む24時間体制で監視業務を行っている特殊な職場の事例ではありますが参考になれば幸いです。
「缶コーヒー代って結構バカにならないよね−」
それは同僚の何気ないひとことから始まりました。
職場の休憩室に設置されている自販機は缶が110円・ペットボトルが140円で売られています。110円の缶コーヒーを1日1本飲むと月平均2,200円となかなかの金額になる上に、夜勤時の冷え込む時間には暖かいジョージアや紅茶花伝が飲みたくなるものですが夏場は「つめた〜い」飲みものしかないなどの不満がありました。そんなとき同僚の一言から「じゃあ自前で用意するか」と "コーヒー会" をスタートさせました。
というわけで達成すべき目的は2つ:
- 缶コーヒーよりもリーズナブルにコーヒーを飲めるようにすること(同僚の主目的)
- 監視ルームですぐ淹れられるようになること(私の主目的、詳しくは後述)
設備構築&会費検討
いきなりコーヒーメーカーを買うのは無理があるので、まずはスロースタートということでインスタントコーヒーから始めることに。とりあえず電気ポットやカップスタンド、カップホルダー、ディスペンサー、小物入れなどを自腹で買いそろえました。
カップスタンド ホワイト クリアカップ ペーパーカップ保存用スタンド CSD-1
- メディア: ホーム&キッチン
クリンプ カップホルダー 7オンス~9オンス対応 5P ブラック DR-453
- メディア: ホーム&キッチン
コーヒーメイト/インスタントコーヒーディスペンサー/アイデア雑貨 【1個】
- メディア: ホーム&キッチン
【まとめ買いセット】 木製 コーヒーマドラー14cm 400本セット (200本入× 2個組)
- メディア: ホーム&キッチン
バスケット: ニトリネット【公式】 家具・インテリア通販
さらに家でホコリを被っていた Nestle ネスカフェバリスタ も引っこ抜いてきて休憩室の自担当冷蔵庫脇に設置。ちなみにワイヤーラックも購入。
昼間は休憩室にあるネスカフェバリスタを使ってもらい、夜勤時は上記のバスケットを監視ルーム(一応飲食禁止)に持ち込んで電気ポットですぐインスタントコーヒーが飲めるようにする目論見です。
次に会費の検討です。試算したところ1杯15円のランニングコストがかかることがわかりました。
項目 | 単価 | 購入品 |
---|---|---|
インスタントコーヒー | 6.4円 | AGF マキシム 135g 429円 ヨーカドーセール |
ノンカロリー甘味料 | 2.6円 | シュガーカット顆粒ゼロ 1kg 2619円 |
クリーミーパウダー | 2.1円 | ネスレ ブライト 400g×2袋 549円 |
紙コップ 7oz | 3.0円 | 日本デキシー 紙コップ205ml 50個入 149円 |
マドラー | 0.9円 | 木製コーヒーマドラー 200本入 184円 |
合計 | 15.0円 | - |
日勤時には1杯/日・夜勤時には2杯/泊で月15杯飲むのをモデルケースとし225円/人・月。この試算から会費を500円/月とし、出た利益から立て替えた初期投資分(1.5万円)をペイしていくことにしました。
ピッチャー型電気ポット is 神
今年の6月、監視業務に従事している夜勤メンバーに声をかけたところ10人の希望者が集まりコーヒー会が運用がスタートしました。
実際に運用してみると電気ポットが予想以上に便利で捗りました。休憩室は監視ルームからやや遠いうえに静脈認証ドアを通らないといけないため移動コストが高かったのですが、電気ポットを置いたことで思い立ったらすぐ熱々のコーヒーが飲めると大好評でした。
象印 沸とう電気ポット 1.0L CH-DT10-XJ ステンレスブラウン
- 発売日: 2006/12/01
- メディア: ホーム&キッチン
ちなみに一般的な電気ポットでもなく電気ケトルでもなく、なぜピッチャーの形をした電気ポットを買ったというと、
- 電気ポットを置くと他担当から「なにそんなの持ち込んでるの?」とクレームが入る恐れがあるが、ピッチャー形なら「お冷や入れです!!」とごまかせそう
- 電気ポット・電気ケトルは消費電力が1.5kWと高くブレーカーが飛ぶ恐れがあったが、この製品は沸くのは遅いが430Wと低いので安心
- 一般的な電気ケトルは沸かすだけだが、この製品は保温機能があるのでいつでもお湯が出る
などの理由がありました。要するに電気ポットと電気ケトルをいいとこどりな製品だったんです。実際その狙いは大いに当たりました。
東芝ライテック 漏電保護タップ 住宅電気設備 LBY-120C
- メディア: Tools & Hardware
なお、もしもの時の設備影響・感電を防止するために漏電保護タップを取り付けてあります。
一方で想定が外れたのがネスカフェバリスタが全く使われなかったこと。最初は物珍しさにしばしば使われていたのですが、1ヶ月もしないうちに全く稼働しなくなりいつのまにかインスタントコーヒーが湿気って固まっていました。まあ身も蓋もない言い方をすればただのインスタントコーヒー溶かし機なので、ふつうにポットでお湯を注いでかき混ぜたほうが早くて楽なんです。
インスタントコーヒーディスペンサーを導入したことで瓶をあけてスプーンで規定量を測る手間が無くなり、傾ければ1杯分の粉が出てくる便利さもバリスタ離れに一役買ったような気がします。
というわけで、なんとかアンバサダーを検討しているみなさん。あれただのプリンタインク商法でどんどん損してくので止めた方がいいですよ。
ライバル、本格ミル挽きコーヒー出現
お財布の負荷は減り、いつでも暖かいコーヒーが飲めると喜んでいた矢先、突如ライバルが出現します。休憩室に本格ミル挽きコーヒーのカップ自販機(トーヨーペンディング アドマイヤ)が導入されたのです。
1杯180〜280円と強気の価格設定でしたが、実際飲んでみるととても美味い。くやしい…でも買っちゃう…!! この刺客により再び我々の財布は厳しくなっていきました。アンケートを取ったところ「会費を上げてもいいので、もっとおいしいのコーヒーを飲みたい」という意見が多かったため、初期の「コーヒー代をとにかく安く」というポリシーを「美味しいコーヒーを安く」に改め、我々も対抗して本格ミル挽きコーヒーに参入することにしました。
【スタンダードモデル】デロンギ (DeLonghi) コンパクト全自動コーヒーメーカー マグニフィカS ブラック ECAM23120BN
- 発売日: 2016/10/01
- メディア: ホーム&キッチン
コーヒーメーカーは デロンギ マグニフィカ S ECAM23120BN を迷わず選定。というのもコーヒー殻を捨てる行程を含めたフルオートで現実的な価格という条件だとデロンギくらいしか見つかりませんでした。またこのモデルはエントリーモデルに無い「カフェ・ジャポーネ」という蒸らし行程を入れドリップコーヒー風のテイストが味わえるモードが用意されているのがポイントでした。一方でさらに上位のモデルなら全自動でカフェラテやカプチーノが作れるのですが、牛乳の管理など衛生上の課題が拭えないことから見送りました。スチームノズルが付いてるので、やる気があれば自分でミルクフォームが作れますしね。
またアンケートで「コーヒーが飲めないので、緑茶や紅茶があるとうれしい」という意見を何人かからもらったのでティーバッグをラインナップに加えることにしました。
ファミレスのドリンクバーを再現したく、無印商品でアクリル製引き出し を買ってきて、ティーバッグの化粧箱を切り抜いてペタペタ。かなりそれっぽくなったんでしょうか?
また紙コップが小さい・すぐ冷めてしまうという意見があったことから、大容量で断熱性に優れるフタつき紙コップに変更。
これらの変更によりコストが63円/杯に跳ね上がり 948円/月・人に。このことから会費を1,000円/月に値上げ。会員数10名で毎月の利益が520円。今回追加投資した10万円の回収に約16年かかる計算です。その前に確実に異動すると思います。(多分に個人的趣味と野望が入っているので端から回収しようとは思っていません。黒字であればいいです)
項目 | 単価 | 購入品 |
---|---|---|
コーヒー豆(15g) | 38.0円 | KALDI スペシャルブレンド 200g 507円 |
ノンカロリー甘味料 | 2.6円 | シュガーカット顆粒ゼロ 1kg 2619円 |
クリーミーパウダー | 2.1円 | ネスレ ブライト 400g×2袋 549円 |
紙コップ 14oz | 12.6円 | サンナップ 厚紙カップ 400ml 50個入 486円 |
紙コップ フタ | 7.0円 | サンナップ 厚紙カップ用フタ 100個入 224円 |
マドラー | 0.9円 | 木製コーヒーマドラー 200本入 184円 |
合計 | 63.2円 | - |
コーヒー会ここに完成
コーヒー会発足から半年。ついに思い描いていた完成形に達することができました。挽き立てのコーヒー豆から淹れたエスプレッソは本当に美味しく、さらに追加投資してキャラメルソースやチョコレートソースと買って職場内カフェを作りたい欲望まで出てきました。
緑茶や紅茶も少しグレードの高いものを選定したためかこれまた美味い。真夜中のひもじい時に飲む香ばしい玄米茶は身体に染みます。紅茶の華やかな香りもリラックスにとても最適。
飲みもののクオリティがあがったことで、休憩のクオリティが上がり、ひいては業務のパフォーマンスや職場生活品質の向上が図れればと思います。
コーヒー会ポータルサイト
最後に技術っぽい話を。
会員からお金をもらって運営するという性質上、金や物の流れを透明化したいモチベーションからポータルサイトを作りました。ベタに Excel で管理しても良かったのですが、会社外で閲覧・編集ができない(かといって社内では Dropbox などのストレージや、Office 365 や Google スプレッドシート などのオンラインアプリは遮断されており利用できず)のでフレームワークの勉強も兼ねてWebサイトにしました。
私が借りているレンタルサーバーでは Ruby や Python がまともに動かないので実質 PHP 一択。CakePHP あたりが有名ですが、Google トレンドを見ると Laravel が近年圧倒的人気なようだったので選定。
会員の管理や会費の納付状況、全体の財政状況、消耗品のストック状況などを管理・閲覧できるようにしています。
図らずもユーザーの登録・認証、データベースから在庫情報を取ってきたり更新したりとWebアプリケーションの基本的エッセンスが多く含まれており学習課題としてかなり優秀なんじゃないでしょうかこれ。
なおラインナップの紹介やコーヒー会の概要など部外者に見られてもよい情報は認証無し、内部情報を伴うページはユーザー認証有りとしました。ユーザー登録は部外者にされては困るので会社のメールアドレスのみを許容し、そのメールアドレスに書かれた認証ページを踏まないと登録が完了しないようにしました。まあ普通ですね。
ちなみに今回使った Laravel ですが、バージョンが 0.1 違うだけでクラスの構成やメソッド名、CLIコマンド等が大きく異なりリファレンスが役に立たないし、互換性も低い。さらにフルスタックWAFにしては機能が足りておらず、上記のメール認証も自前で書く必要がありました。フレームワークとは何だったのか…。たしかに作りは今風ですが、発展途上でプロダクションで使うには時期尚早だなと感じました。そしてなにより動作がもっさり。おとなしく CakePHP で作れば良かった…。
勉強会などでイケてるIT企業におじゃまするたび、休憩室にドリンクバーがあったり、社内カフェがあったり、バランスボールや畳があったりと憧れの的でしたが、それが自分の会社でも少しではありますが達成できたのです。
プール金マイナス11万に少し青ざめたりもしたけれど、野望が叶って私は満足です。コーヒーおいしいです。^q^
余談:お紅茶
これまで紅茶の種類なんて意識したことが無かったのですが、今回を機にちょっとダージリンとアッサムを飲み比べてみました。
左がダージリン、右がアッサム。抽出のスピードから色まで全然違います。アッサムは全体的に味が濃く穀物茶のようなテイスト。ダージリンは華やかな香りと透き通ってまっすぐな渋み・えぐみがあります。個人的にはダージリンの方が紅茶のイメージ通りな香りと味で好きです。
しかしミルクを入れると方向性が全く変わります。ダージリンはミルクに負けてなんだかパっとしない味になりますが、一方でアッサムは香りや渋みが引き立ってミルクとよく馴染んでいます。ミルクティーにするなら圧倒的にアッサムですね。
こんな違うもんなんですねー。
追記: まさかの完済
はじめてから1年半、ついに完全黒字化を達成!
当初は回収できないと思っていましたが、エスプレッソメーカー導入によりメンバーが一気に30人増え(コンビニでドリップコーヒー買ってた勢が大幅に流入)、さらにコーヒー通から安くて美味いコーヒー豆を教えてもらいコストダウンが図れたことが黒字幅増大につながりました。それにしても、見返すと図らずも スロースタート → 多額投資で品質アップ → 顧客満足度向上 → 会員数・収益アップ というスタートアップのサクセスストーリーになってますね。興味深い。
さてこれからは溜まったお金でかき氷器でも買いましょうかね。
Material for MkDocs を日本語対応した話&初めてのOSSコントリビュート
結論: MkDocs (0.17以上) + Material (2.0.3以上) テーマにおいて、次の設定を行うことで日本語UI表示+日本語検索(マルチバイト検索)が可能になります!
theme: name: 'material' language: 'ja' extra: search: language: 'jp'
MkDocs いいよ、MkDocs
最近仕事で MkDocs というドキュメントジェネレーターを導入し始めています。マニュアルやドキュメントを作る際、オフライン(スタンドアロン環境)で参照したり他部門に成果物を共有したりする場合があるため Wiki や CMS はポータビリティの関係からできれば使いたくないし、かといってHTML手書きはさすがに辛い。また PowerPoint や Word で消耗したくもない。そんなとき思いついたのが静的ファイルを生成してくれるドキュメントジェネレーターでした。
Sphinx や Re:VIEW などが有名ですがそこまでの表現力・柔軟性は要りませんし、何より他のシステムとの互換性から Markdown を使いたかったので一番よく耳にする MkDocs を採用しました。(Python製ってのも惹かれた)
一般的な Markdown ファイルにサイト構成(ページ一覧)を書いたYAMLファイルを1つ作るだけで動き、吐き出されるHTMLもおシャレでわかりやすくかなり気に入ったのですが、唯一、日本語検索ができないという制約が引っかかりました。
Material for MkDocs 日本語対応
MkDocsによるドキュメント作成 - Qiita のように独自に改良されている事例もありましたが、ドキュメントをビルドするたびにファイルを差し替える必要があり面倒そうでした。そんなときサードパーティー製のテーマである Material for MkDocs で言語を指定するとマルチ言語対応の全文検索ライブラリ lunr-languages を自動でロードすることに気づきました。どうやら独自で多言語化対応を進めているようです。
まだ日本語には対応しておらず日本語を指定するとエラーになって使えない状態でしたが、見よう見まねで言語定義ファイルを作ってみたところ日本語表示&日本語検索が動くようになりました!
やればできるもんですね。
日本語検索ができない事に困っている記事をよく見かけましたし、なによりも自分が解決されてほしいと思っていたので勇気を出して日本語対応のプルリクを送ろうと決意しました。
はじめてのOSSコントリビュート
とはいえプルリクなんて送ったこともないですし、そもそも git もろくに使えず、手に負えなくなったらプロジェクトごと作り直すなんてことをやってるくらいです。でも幸いコントリビュートの方法がドキュメントに詳しく書いてあったのでその通り行動しました。
プロジェクトを fork して separate git branch でいじれとな。セパレート??ブランチを切れってことかな? で、プルリクを送る前に yarn でビルドしろとな。ビルドしたファイルが必要? ビルドが通ることをチェックする目的?? 他の人のプルリクみるとビルドファイルは push してないのでたぶん後者だ。
ひーひー言いながらなんとかプルリクを送信。
おお、なんか自動でコードの品質チェックとビルドが走ってる〜。これが噂に聞く異世界の超科学、継続的インテグレーション!!そして数分後、
通ったーー!! ヽ(゚∀゚)ノ
手の平にこんなに汗をかいたのは久しぶりです。
そしてさらに翌日…
キタ━━━( ´∀`)・ω・) ゚Д゚)・∀・) ̄ー ̄)´_ゝ`)━━━!!!!
泣きそう。
そして同日、僕のコミットを取り込んだバージョンが晴れてリリースされました。お仕事が早い。英単語をいくつか和訳しただけではありますが、こうして人生初めてのOSSコントリビュートは無事成功したのでした。
オチ
プルリクのコメント欄で作者とやりとりしたところ、実は実装は済んでおり以前から設定ひとつで日本語検索を有効化できることが判明。しかし公式ドキュメントの表記が間違っており、自分も含めて誰も使えていない状況だったというオチでした。まあこのやりとりのおかげでドキュメントのミスに気づいて修正できたし、UIが日本語で表示されるというのは紛れもなく機能追加だからよしとしましょう。
Previous
が 前
になっただけで何がうれしいんだ?と思う方も多いと思いますが、義務教育で習う英単語1つにすら拒絶反応を起こす英語アレルギー持ちの人(というかただの思考停止してる人)がいるため、日本語化はけっこう重要なんです。
Material for MkDocs 日本語対応方法
というわけで最後に日本語表示&日本語検索するための設定方法を紹介します。mkdocs.yml を次のように設定するだけです。
theme: name: 'material' language: 'ja' extra: search: language: 'jp'
じつはここに罠がありまして、日本語の言語コードは ISO 639-1 で ja
と決められていますが、lunr-languages はそれを誤って jp
で実装してしまっているためいろいろ不都合が生じていました。その対処として上記の通り2種類の言語設定を書く必要があります。
なおこの問題は master ブランチではすでに修正が入っており、次のリリース(lunr-languages 2.0.0?)で ja
にリネームされ、jp
は ja
へのエイリアスになる予定です。そうなれば、extra/search/language の設定は不要になります。
というわけで、MkDocs + Material は日本語フルサポートとなりました。みなさんぜひ活用なさってください!!
長時間快適に作業できる監視環境をつくる
イケてる監視ツールとかではなく、パソコン本体のおはなしをします。
こんにちは。とある通信会社の委託でネットワークの監視・保守をやっている作業員です(エンジニアじゃないよ)。24時間365日休むこと無く業務を行っていますが、16時間にもなる夜勤をこなすには、快適な作業環境が必要不可欠です。このエントリでは、2015年に行った監視業務用PC・ディスプレイの更改の実体験を通して得られた知見をご紹介したいと思います。
〜忙しい人向けサマリ〜
- PCは遅くとも5年で買い替えた方がいい
- でも同時期に買った機械は同時期に壊れるので分散して買い替えたほうがいい
- 最近のミニPCは普通に使えるのでおすすめ
- 高効率電源ユニット(80 PLUS)にすると消費電力・発熱が大幅ダウン
- 液体電解コンデンサは低寿命なので、固体コンデンサを使ったPCを選ぼう
- システムドライブは絶対にSSDにしよう。マジ別世界
- 液晶は VA か IPS のものにしよう。TNでピボットするとマジ悲惨
- ディスプレイは画面サイズだけではなく、ドットピッチも考えて
- 安い液晶はフリッカー(チラつき)に注意。健康第一
- 眼の高さより高くなる大きなディスプレイはドライアイの原因になる
- ディスプレイは角度だけではなく、高さも調整できるものを選ぼう
- ブルーライトは設定で軽減できる
Update
- 2017/1/7 : 選定端末のベンチマーク結果を追加、ミニコラム「写真を撮ってディスプレイを調整しよう」を追加、その他誤字修正
おしながき
- おしながき
- 監視環境の故障傾向
- 端末に求められる要件
- 端末の機種選定:HP EliteDesk 800 G1 DM
- 特徴1:小さい
- 特徴2:低消費電力・低発熱
- [Coffee Break] Tera Term はGPUで早くなる!?
- [Coffee Break] Energy Star 対応品を選定しよう
- 80PLUS
- ENERGY STAR
- メリットしかないのでぜひ選択を
- 特徴3:高い堅牢性
- 特徴4:十分な性能
- ディスプレイに求められる要件
- ディスプレイの選定:DELL U2414H / U2415
- さいごに
Mac mini のディスク不調、SMCリセットで直る
狂うストレージ
先日、自宅サーバーにしている Mac mini (Mid 2011) からアラートメールが届きました。
Computer name : MacMini Host name : MacMini Computer model : Macmini5,1 Drives in report : 1 ### DRIVE 1 OF 1 ### Drive Volume(s) : MacMiniTimeMachine Serial No : Model Family : Model : 7K8:/\6?w`$(It6&D 0 B Drive Type : HDD Device Path : /dev/disk1 Advanced S.M.A.R.T. status : FAILED Overall Health Rating : BAD 10.3% Overall Performance Rating : LOW 31.7% Issues found : 5 === Problems Summary === Failed Indicators (life-span / pre-fail) : 5 (1 / 4) Failing Indicators (life-span / pre-fail) : 0 (0 / 0) Warnings (life-span / pre-fail) : 0 (0 / 0) S.M.A.R.T. Errors count : 0 I/O Errors Count : 0 (0 / 0)
バックアップ用に使っている外付けUSB HDDのアラートのようです。SMARTの中身を見てみると・・・
Total Capacity : unknown Model : 7K8:/\6Θw`$(It6&D Firmware Version : -¥ Drive Type : HDD Power Cycles Count : 118,784 Current Power Cycle Time : 48.9 hours === DRIVE HEALTH INDICATORS === ID | NAME | TYPE | UPDATE | RAW VALUE | VALUE | THRESHOLD | WORST | STATUS | LAST MODIFIED 12 Power Cycle Count Pre-fail online 0xC24F0001D000 0 223 2 100% OK 2016/12/23 13:20 31 Unknown Attribute Pre-fail online 0x3E34CD6AE649 243 223 219 100% OK 2016/12/23 13:20 34 Unknown Attribute Pre-fail offline 0x7CC9D46933EE 74 221 194 100% Failed 2016/12/23 13:20 41 Unknown Attribute Pre-fail offline 0xC11403A8EDDE 122 113 35 10.3% OK 2016/12/23 13:20 42 Unknown Attribute Pre-fail online 0x33DFA095459E 3 251 97 100% Failed 2016/12/23 13:20 46 Unknown Attribute Pre-fail online 0xAE6F3EB70DE8 187 167 151 60.6% OK 2016/12/23 13:20 62 Unknown Attribute Life-span online 0x2C8DC26D2C05 228 154 186 100% OK 2016/12/23 13:20 65 Unknown Attribute Life-span online 0x24049C09390A 104 46 229 37.7% OK 2016/12/23 13:20 66 Unknown Attribute Pre-fail online 0x800000020000 182 67 76 86.5% OK 2016/12/23 13:20 98 Unknown Attribute Pre-fail offline 0x13901948309 252 145 53 100% OK 2016/12/23 13:20 104 Unknown Attribute Life-span offline 0xD9D594030F1A 159 120 179 48.8% OK 2016/12/23 13:20 111 Unknown Attribute Life-span online 0xFD248789F941 189 50 250 92.7% OK 2016/12/23 13:20 132 Unknown Attribute Pre-fail offline 0x66610DB2A160 213 253 248 100% Failed 2016/12/23 13:20 138 Unknown Attribute Life-span online 0x27559167466B 182 138 23 71.0% OK 2016/12/23 13:20 139 Unknown Attribute Life-span offline 0x623761F989EC 167 132 200 51.5% OK 2016/12/23 13:20 170 Unknown Attribute Pre-fail online 0xE9CE8CC4C0D6 163 23 32 79.1% OK 2016/12/23 13:20 172 Unknown Attribute Pre-fail offline 0x4D6030F412F2 189 149 140 78.4% OK 2016/12/23 13:20 176 Unknown HDD Attribute Life-span offline 0x436EBAFFCFDE 0 0 0 100% OK 2016/12/23 13:20 185 Unknown Attribute Life-span online 0x45896BA6A3C5 222 130 213 100% OK 2016/12/23 13:20 187 Reported Uncorrectable Errors Pre-fail offline 0xF158EC29A791 240 157 250 100% OK 2016/12/23 13:20 190 Airflow Temperature Celsius Pre-fail offline 143 181 53 84 87.1% OK 2016/12/23 13:20 201 Soft Read Error Rate Life-span offline 0x7116CBBB6E5A 88 44 90 78.6% OK 2016/12/23 13:20 220 Disk Shift Pre-fail online 0x7A20219FCD7F 127 43 27 53.5% OK 2016/12/23 13:20 230 Head Amplitude Life-span offline 0xB757BDEBC509 113 228 117 100% Failed 2016/12/23 13:20 234 Unknown Attribute Pre-fail online 0xC4F694E85DB2 172 159 214 31.7% OK 2016/12/23 13:20 236 Unknown Attribute Pre-fail online 0x79712CDEBBA2 240 155 99 100% OK 2016/12/23 13:20 250 Read Error Retry Rate Pre-fail online 0x66FAA5AD308A 204 215 129 100% Failed 2016/12/23 13:20 254 Free Fall Sensor Pre-fail offline 0x306CDA79A73F 229 113 66 100% OK 2016/12/23 13:20
機種名やファームウェアバージョン情報は文字化けしているし、統計情報の attribute id も value もハチャメチャです。完全に逝っちゃってますね。しかし、このHDDを別のMacに接続したところ、正常にSMARTを読み込めたのでHDDが壊れているわけではなさそうです。
とりあえずマシンを再起動してみたのですが、なんとOSのシャットダウンに10分もかかりました。状況を確認していたところ、普段は10分程度で終わるはずのバックアップがある日を境に10時間以上かかるようになっていたことも判明。ディスクのパフォーマンスが低下している・・・?
システムディスク(Crucial MX200 SSD) に対しベンチマークを取ってみたところ、ななんとスループットが数百KB/s に低下しています!
内蔵SSDと外付HDDが同時におかしくなるということは、OS か Mac mini 本体のハードウェア障害が疑われます。ローレイヤーな話なので SMC (System Management Controller) も怪しいところ。
SMCリセット
というわけでまずはSMCリセットから。Mac mini 本体の電源ケーブルを抜き、数十秒放置すればリセットされます。
おお、システムディスクのパフォーマンス低下直ったー!
Total Capacity : 1.0 TB (1,000,204,886,016 Bytes) Model Family : Toshiba 2.5" HDD MQ01ABD... Model : TOSHIBA MQ01ABD100 Form Factor : 2.5 inches Firmware Version : AX001U Drive Type : HDD 5400 rpm Power On Time : 26,509 hours (36 months 24 days 13 hours) Power Cycles Count : 44 Current Power Cycle Time : 115.4 hours === DRIVE HEALTH INDICATORS === ID | NAME | TYPE | UPDATE | RAW VALUE | VALUE | THRESHOLD | WORST | STATUS | LAST MODIFIED 1 Raw Read Error Rate Pre-fail online 0x0 100 50 100 100% OK - 2 Throughput Performance Pre-fail offline 0 100 50 100 100% OK - 3 Spin Up Time Pre-fail online 2,607 100 1 100 100% OK 2016/12/23 16:41 4 Start Stop Count Life-span online 75,920 100 0 100 100% OK 2016/12/23 16:41 5 Reallocated Sector Count Pre-fail online 0 100 50 100 100% OK - 7 Seek Error Rate Pre-fail online 0x0 100 50 100 100% OK - 8 Seek Time Performance Pre-fail offline 0 100 50 100 100% OK - 9 Power On Hours Life-span online 26,509 34 0 34 34.0% OK 2016/12/23 16:41 10 Spin Retry Count Pre-fail online 0 253 30 100 100% OK - 12 Power Cycle Count Life-span online 44 100 0 100 100% OK 2016/12/23 16:41 191 G-Sense Error Rate Life-span online 0 100 0 100 100% OK - 192 Power-Off Retract Count Life-span online 5 100 0 100 100% OK 2016/12/23 16:41 193 Load Cycle Count Life-span online 277,353 73 0 73 73.0% OK 2016/12/23 16:41 194 Temperature (Celsius) Life-span online 30 100 0 100 100% OK 2016/12/23 16:41 196 Reallocated Event Count Life-span online 0 100 0 100 100% OK - 197 Current Pending Sectors Count Life-span online 0 100 0 100 100% OK - 198 Offline Uncorrectable Sector Count Life-span offline 0 100 0 100 100% OK - 199 UDMA CRC Error Count Life-span online 0 200 0 200 100% OK - 220 Disk Shift Life-span online 0 100 0 100 100% OK - 222 Loaded Hours Life-span online 3,375 92 0 92 92.0% OK 2016/12/23 16:41 223 Load Retry Count Life-span online 0 100 0 100 100% OK - 224 Load Friction Life-span online 0 100 0 100 100% OK - 226 Load-in Time Life-span online 176 100 0 100 100% OK 2016/12/23 16:41 240 Head Flying Hours Pre-fail offline 0 100 1 100 100% OK -
外付けHDDの SMART も直ったー!
そんなわけで SMC て結構多種多様なトラブルに関わってくるんだなーと思い知った案件でした。めでたしめでたし。