👊

現場改善#024 JTC向けキッティング&資産管理体制改善案

2022/12/29に公開

あらまし

JTC(Japanese Traditional Company)向けのキッティングと資産管理について具体的な改善案の一つとして、提案してみます。どこがJTC向けかというと、ライセンス費用が発生しないため予算計上なしで着手できるという点です。

想定する現状のイメージ

IntuneやJamfProといった構成を導入したくても、現状維持勢力が強いJTCではハードルが高く、大きな改善が難しいといった環境を想定しています。具体的には、

  • 購入時にイメージ作成までは行っているが、キッティング時の修正が多い
  • 端末管理はExcelもしくはKintoneなどで人力管理している
  • ランニングコストの発生する仕組みの導入を嫌がる
  • クライアント管理としてはSkySeaもしくはLanScopeを導入しているが、使いこなせていない

そんな中、仮想サーバーのリソースさえ[1]あれば、OSSの力を借りてすべて乗り切ってしまおうというプランです。

構成検証のきっかけ

リーグオブ情シス(League of Infosys, LoI)No.10 Presented by IIJのバルス先生の発表時に、あどみんちゃんから Ansible+AWX+Snipe-ITがイケてるとのこと。(2:14:00付近)では、最適な構成ができないか調査してみよう…というのが事の発端でした。

具体的なシステム構成

AnsibleとSnipe-ITにはLinux環境が必要です。ただ、Linux導入アレルギー対策として、Windows系サーバーでWSL2を利用して構築する想定で記載しました。

【新規導入】
Talend: データ連携用
Ansible: 端末情報収集&Windowsキッティングに利用
Snipe-IT: 資産管理システム
【既存システム】
LanScope: 端末管理システム

処理の流れ

処理イメージ

  1. 端末納品後、Ansibleでコントロールできるように(WinRMを有効化)する
  2. 社内LANに接続できるよう設定する。(もしくはDHCP)
  3. 端末をLAN内で検出したら自動的に端末情報がSnipe-ITに登録される
  4. Snipe-ITに登録したのち、初期キッティングをAnsibleから自動実行

WinRM有効化については、イメージ化するか納品前のキッティング作業として組み込むことができると、だいぶ楽になる見込みです。既存PCへの対処は今回想定外になります。

メリット

  1. 端末をネットワークに接続するとSnipe-ITに自動で登録される
  2. その後、Ansibleによる初期キッティングが自動で実施される
  3. ドメイン参加も含めたキッティングも後続処理で実行可能

ポイントは一切の手間をかけずにSnipe-ITにデータが登録されるところです。その結果、既存のSkySea/LanScopeといった端末情報管理の情報と突合して、データの棚卸が可能になります。

なお、突合方法については現時点でシステム化しておりませんので、双方のデータをExcelなどで消し込んでいくイメージです。

デメリット

情シスの運用に必要なスキルが増えてしまいます。

  1. Docker環境の構築スキル
  2. 見よう見まねでLinux環境を構築するスキル
  3. TalendにてWebAPIを扱うスキル
  4. TalendにてCSVからDBへ登録するジョブを作成するスキル

また、WSL2上に構築したUbuntu環境は再起動時にポートフォワーディングが正常にできるように若干工夫が必要になります。

追記

AWXは必要なリソースが多く、複数のコンテナイメージの連携が必須のためDockerでの環境構築に慣れていないと、運用が難しいと感じました。そのため、CUIでAnsibleだけを利用する想定です。ただ、最終的にはTalendでの自動実行に落とし込むことで、利用するだけであればAnsibleの知識もLinux操作も不要になります。

WSL2で構築するにはBIOSレベルで仮想化が有効にする必要があるため、物理サーバー(or物理クライアント)が必要なってしまいます。仮想リソースだけで完了させるにはWSL1を使うか、Linux系OS上で構築するしかないかも。試験導入であればメモリがちょっと多いクライアントPCを用意してもらうことで対応可能かと思います。

あと、リーグオブ情シス内であどみんちゃんから「Snipe-ITからAnsible用のコードを生成してくれる」という事でしたが、そこはまだ調査できておりません。

参考リンク

脚注
  1. 正確にはWindows Serverライセンスは2台必要になります。試験導入にはクライアントPCでも代替可能なのでご容赦を。 ↩︎

Discussion