情シスは何度でも甦るさ。

VBA!VBA!

"Excelにさよなら"社内のIT資産管理ツールにSnipe-ITを導入した

f:id:ryoben:20190315140948p:plain
Snipe-IT

Excelへの憎しみを生む業務「機器管理」

情シスの仕事のうち、大事だけどくそ面倒臭い仕事のうちの一つ

機器管理

誰がどのPCを使っているのか。 それだけを管理したい。 そこで、まず最初に何を使うって、そらExcelですよね。

ただ、この機器管理の対象は昨今どんどん増えていく状況にあります。
PC、社内携帯(スマホ)、タブレットウェアラブルバイススマートスピーカーなどなど

で、最初はそれでいいんですが、運用を続けていくと、

社員の退職、入社
端末故障による交換
紛失
イベントなどで一時的な用途による貸し出し

なんかの出入りが発生していきますよね。

しかも、携帯電話なんかだと、退職による返却があった後、それをすぐに違う人に払い出すと前の人宛の電話がバンバンかかってきたりして、一定期間寝かす。などの細かい運用が求められます。

だが、しかし、Excelで管理できるのは、 のみ

履歴をExcelで管理しようとするとすぐに限界が来ます。

社内で一人だけがそのExcelを管理しておけば、その人の記憶を頼りに運用が回ることもありますが、複数人で管理したり、管理者が変わったりした時に必ず混乱に陥ります。

じゃぁ、履歴管理もできるツール入れようぜ。

ということで、色々探した挙げ句にたどり着いたのが、今回導入したSnipe-ITです。

Snipe-ITの概要

Say Goobye To Spreadsheets! という謳い文句の通り、今回の要件にビタッっと適合するOSSのツールです。

SaaS型のサービスとしても提供されており、また、OSSなのでソースコードも公開されています。
なので、導入の仕方としては、以下3パターン

No 導入方法 向いてる人 費用
1 (自社やクラウドに)サーバ立ててインストールする 安いのは正義 0 or 1200円/月(AWSでEC2の最安サーバ)
2 SaaSサービスを契約 スキルないけど金はあるしすぐ使いたいんや 4500円/月($39.99)
3 AWSマーケットプレイスでインストール済みイメージ買ってAWSで運用 折衷案 2000円/月(AWS EC2+イメージ使用料)

うちは、導入時に時間があんましなかったので、3番を採用しました。

で、実際使ってみてわかった機能的な部分を紹介します。

Snipe-ITの機能

管理対象

よくあるPCや携帯だけでなく、色んなタイプの機器が管理できるようになっています。

  • 資産(Asset):機器端末 例:PC、携帯
  • 付属品(Accessory):複数台管理していて、Userに1つづつ在庫を割り当てれる 例:マウスやキーボード
  • ライセンス(License):ソフトウェアなどのライセンスの期限管理ができる 例:Office系ソフトやAdobeのソフトなど
  • 消耗品(Consumable):割り当てる度に在庫数が減っていく(在庫管理ができる) 例:紙やインク
  • 構成部品(Component):Userに複数数量を一度に割り当てれる 例:PCのメモリ
  • 人物(User):人や部署。これに対して上記5種類の資産を割り当てることができる

うちが実際使ってるのは、人と資産(Assets)しか使ってません。ライセンスは今後使う予定

履歴管理

  • この機器が誰に使われてきたのかの履歴
  • このユーザーがどの機器を使ってきたのかの履歴

の2方向からの履歴が見れます
また、機器自体にも、修理などのメンテナンスの履歴を登録して別途管理することができます。

カスタムフィールド

こういうWebの管理システムでは当たり前のカスタムフィールドを自由に追加できます。 ただ、注意点なのは、ユーザーに対してカスタムフィールドを追加できません。 資産側にのみ、追加可能です。

何が困るかというと、
今回外部に貸し出している機器については、月でまとめてレンタル料を請求するという業務があるのですが、機器を割り当てている課金対象のユーザーを抜いてそのデータを作りたい。
でも、ユーザー側にはカスタムフィールドが追加できないので、機器側に課金するという項目を追加し、そのフラグを立てた機器をユーザーに割り当てる。
ということをしなくてはならず、ちょっと不便。

機器のステータス管理

デフォルトのステータスの他に自由にステータスを追加できます。
作成したステータスごとに、機器を割り当てできるか/できないかの設定もできます。(紛失 のステータスなら割り当てできないとか)

ユーザー管理

細かい権限管理が可能です。閲覧しかできないユーザーも作成可能です。
なお、機器を割り当てるユーザーに対してログインを許可するかの設定を行う感じなので、実際の社員(機器の利用者)と、システムの利用者が同じユーザーとして管理されます。

レポート(CSV出力)機能

条件を指定して、CSVでデータを抜くのはできます。 ただ、標準の項目のうち、一部にしか条件を指定できません。なので、カスタムフィールドに対しても条件が指定できないため、不便で。
また、よく使う条件を保存する機能もないため、そこもちょっと不便。
検索条件の保存機能は、2017年12月にgithubに要望が上がっているが、まだ実装されてません。
あと、文字コードUTF-8なのでエクセルで開いたら日本語が盛大に文字化けします。これはどっちかってーとエクセル側で読めるようにそろそろなんとかして欲しい。

インポート機能

CSVのインポート機能があるので、Excelからの移行などは、簡単ちん。
ただ、項目の説明が公式サイトでもわかりにくいため、トライ&エラーで仕様を把握するのに最初は苦労した。

API

RESTのAPIがあります。でも、使ってないから、利便性はよくわかん。
標準のCSV出力機能が不便なので検索系のAPIが無いかを見たけど、無さ気。

注意点

SaaSクラウドで使う際の注意点

ユーザーごとにタイムゾーンを設定できません。
なので、SaaSクラウドの際は、UTCで時間が表示されてしまいます。 実際機器管理で時間まで厳密に管理しないのでそこまで業務には影響ないですが、払い出した日がいつかとか調べる時に読み替えが必要になったりするので微妙です。

日本語

日本語の翻訳がじゃっかんクソです。わからなくもないけど、初見で意味がわからない部分があります。 例えば、管理対象についても

資産 :Asset
付属品 :Accesary
ライセンス : License
消耗品 :Consumable
構成部品 :Component
人物 :User

と翻訳されてますが、このシステムの根幹をなすオブジェクトに対してこんな感じで訳されると色んな画面で表示された際に意味がわかりにくい。
いっそのこと、英語をそのままカタカナにした方が、スッと入ってくる気がしてます。
あと、表記の揺れもあったりします。
外部の翻訳サービスの「crowdin.com」を使って翻訳しており、そこに対して修正案を投げることもできるので、投げてみたりもしましたが、反映されるのいつやねんって感じです。
自分でサーバ立ててる場合は、日本語ファイルを直接触って変更することも可能です。
うちの場合は、バージョンアップとかした際にそこらへんの移行も面倒なので現状は我慢して使っています。

マニュアルの情報量が少ない

インポート機能のところでも書きましたが、公式マニュアル(英語)の情報量が少なくトライ&エラーで調べながら機能を理解する必要があります。
インポートの機能を調べる際は、最終的にphpのソースを読むとこまでいきました。

総合評価

おおむねExcelに比べれば200%まし。機能的にもコスパ的にも満足です。
ただ、サポートがちょっとね。という感じなので私みたいに、Excelへの怒りゲージがMAXになった際にその怒りパワーで初期導入を乗り切って貰えれば良いかと思います。