てくなべ (tekunabe)

ansible / network automation / 学習メモ

[Ansible] AnsibleFest 2024 のキーノートで気になったポイント(事例、Event-Driven Ansible、Policy as Code など)

はじめに

2024/05/6-9 (現地時間)、デンバーRed Hat Summit 2024 と AnsibleFest 2024 が開催されています。去年からこの 2つのイベントが合同開催になりました。

私は現地には行っていませんが、両イベント合計4つのキーノートを YouTube Live で見れました。

このうち、AnsibleFest のキーノートの気になったパートの個人的なまとめと所感を記載します。パートによって掘り下げの濃淡がありますがご了承ください。

動画の文字起こしや翻訳機能を参考にしていますが、まとめは誤訳や誤解があるかもしれませんので、正確なところは動画を参照してください。

なお、キーノート以外は後日アーカイブが公開されるセッションもあるかもしれませんので、イベントページ や、セッションカタログAnsible の X アカウント などをチェックしておくと良さそうです。

■ Day1 Ansible Fest Keynote: Adopting a mission-critical automation mindset

www.youtube.com

ADP's Automation Journey

動画は 6:14 頃から。

  • ADP (Automatic Data Processing) の Automation Journey
  • Ansible はオープンソースであり、コミュニティが活発であることも気に入った
  • CLI 以上のものが必要になり AWX を導入した
  • 社内で注目され始めた
  • 社内でトレーニングを実施、好評
  • 社内に自動化関連の月次ミーティングの場が誕生
  • Dev と Ops の垣根がなくなって団結感が強まった
  • 企業としても成長するなか、システムダウン時に誰を頼ればよいのか
  • サポートが欲しくなってきたため AAP を導入
  • 当初(AWX)サポートがなかったことに不安だったチームも参加してきた

やはり AAP にはサポートがあるのが強みですね。

Ansible Automation Platform Features

17:03からしばらく表示される画面(左上に Ansible Automation Platform のロゴ)では、左のメニューに以下のような項目が見えます。

  • Projects
  • Automation Execution
  • Automation Decisions (EDA)
  • Automation Infrastructure
  • Automation Content
  • Automation Analytics

見たことがないのですが、どうやらこのようにいろいろ統合した UI が AAP 2.5 に導入されるということでしょうか・・?気になります。

他、17:45 からの Ansible code bot という、自動でコード修正のプルリクを作成する bot の話がありました。

画面ではリポジトリTopic のところに ansible-code-bot-scan を設定する様子が映っていました。これで bot が有効化されるということでしょうか。

[2024/05/10 追記] あとで調べたらこちらの手順がありました。Chapter 7. Installing and configuring the Ansible code bot Red Hat Ansible Lightspeed with IBM watsonx Code Assistant 2.x_latest | Red Hat Customer Portal

なので試してみました。

tekunabe.hatenablog.jp

Southwest Airlines: Mission-Critical Network Automation

動画は 19:41 頃から。

  • ミッションクリティカルな環境
    • Southwest Airlines、アメリカの航空会社
    • 120の空港、1日4,000便以上
    • 5,000台以上のネットワーク機器を管理
  • Cisco IOS のアップグレード
    • Cisco IOS のネットワーク機器のバージョン統一(an average process on your Cisco IOS networking devices を意訳)
    • いままではアップグレードはスイッチ1台あたり30-45分かかっていた
    • 飛行機が飛んでいるときにアップグレードするわけでもなく、メンテナンスウィンドウが短いという特性がある
    • AAP によって短いメンテナンスウィンドウで多くの台数のアップグレードできるようになった
  • 新しい空港のインフラの構築
    • Ansible でゴールデンコンフィグを投入することで、素早くオンボードできる
  • コンフィグの標準化
    • 空港、データーセンター、キャンパス全体でコンフィグを標準化したいと考えた
    • IaC の考え方のもと、モジュール化
    • 現在は新拠点で必要なものの 90% のベースラインがあり、細かい差分はわずかな時間で設定できる
  • 社内で開発したポータル
    • NES(Network Engineering Suite)ポータル、バックグラウンドに Ansible を利用
    • ネットワークの可視化
    • ゴールデンコンフィグの生成、フェイルオーバー
    • ステータスチェックによる異常検出と対処
      • 手動の時は 100以上のコマンドを実行してチェックする必要があった
    • イベント・ドリブン・アーキテクチャを導入することを検討している
      • リアルタイムに状況を判断して自己修復する世界を目指す

コンフィグの標準化は自動化以前にやっておくとよさそうと思う一方で、どこまで標準化して、例外や個別コンフィグをどこまで許容して、どう組み込むかを考えるのはなかなか難しかったのではないかと思いました。

自己修復の世界観も興味深いです。機能的な仕組みはなんとなく想像がつくものの、異常と対処のパターン化、フォルスポジティブやフォルスネガティブ発生時の対応のように、基準や運用手順を作っていくのが難しそうだと思いました。

Preparing for the Future: AI, Automation, and the Next IT Revolution

動画は 31:40 頃から

Mission-Critical automation midset として以下の3つにまとめられていました。

  • Unifying teams to unlock truly strategic automation
  • Using automation as a force multiplier
  • Building an automated foundation for AI adoption

うまく咀嚼できませんが、気になった方は動画をご覧ください。

■ Day2 AnsibleFest keynote: Automation, AI, and the next enterprise IT revolution

www.youtube.com

動画は 6:43 頃から。

新しいツールと文化のお話。

  • Ansible を採用して、先駆者はいたが、組織全体には定着しなかった
  • オープン性、透明性、知識共有、の文化を育成することにした
  • 順応性(Adaptability)は重要
    • 新しいツールやプロセスをすぐ試すことを恐れてはいけない
  • CLI を理想としていたが、UI(おそらくGUIのこと)を使うチームがあった
    • UI をなくすと、使っていたチームを排除することになる
    • そこでUIにアクセスできるサンドボックス環境を用意し、JSON に変換することで、快適に開発できる王になった
    • (おそらく、Playbook や CLI のみで実行や確認するのではなく、慣れたGUIと行き来しながら開発できるようにしたということ)
  • 好奇心は重要
  • PowerShellBash など異なる言語を使っていたチームたちは、Ansibleを通じて共通のフォーマットを持ち、プレイブックの共有をするようになった

Ansible を通じて共通言語が生まれて知識を共有するようになったというのは、印象的でした。Ansible に限りませんが、技術選定でツールが統一されていくと色々捗るのだろうなとおもいました。

MAPFRE 社

動画は 15:00 頃から

CTO の睡眠時間を KPI に導入・・!

We introduced this KPI you can copy. The hours of sleep on the CTO.

Event-Driven Ansible と Red Hat Ansible Lightspeed

動画は 26:52 頃から

去年も目玉になっていた Event-Driven Ansible (EDA) と、Red Hat Ansible Lightspeed について。

Palasol での事例とデモ。

  • EDA と AI による自動復旧
    • 例えばデプロイされたノードに問題がある場合、EDA 経由で予測AIが異常を検知し、パフォーマンスプロファイルを復元するように Controller の上部をトリガーされる仕組み
    • 情報収集した結果をもとに Service Now のチケットも作成される
    • 修正用 Playbook を実行
  • Windows Server のトラブルシューティングのデモ
    • データベースでエラーが発生しているが詳細は不明
    • EDA で Watsonに詳細な情報を聞くように仕込めるば、その情報を ServiceNow に反映できる
  • 恒久対処 Playbook の作成のデモ
    • Red Hat Developer Hub 内のリンクをクリックすると VS Code が開く。ADT(Ansible Development Tools)
    • Red Hat Ansible Lightspeed 導入済み
    • やりたいことを自然言語で入力すると、作業ステップが表示される。よければPlaybook生成ボタンで生成
    • ドキュメントもセットで生成される
    • git push してジョブを実行
  • AI を活用した自動化への懸念
    • AI に責任を持たせるために policy as code が有用
    • 例えば、特定の日や時間帯での処理を禁止するポリシーが設定できる(画面上では Playbook か Rulebook の policies キーワードとして表現)
    • policy as code では他にも以下のようなことができる
      • 使用するコレクションの制限
      • AWS インスタンスタイプの指定の制限
      • Playbook へのベストプラクティスの強制

障害対応は例外の連続です。その中でも、共通化、抽象化できるところを見いだせると仕組化しやすいのだと思います。 たとえば、仮に情報収集、判断、対処というステップに分けられる場合、情報収集は共通化しやすそうです。

今回でも情報収集は自動化され、エラーの詳細を AI に問い合わせるところまで示されていました。判断のところは、人の入る余地がまだ大きい気がします。今回は Python のバージョンが異なっていることを目視で確認する流れでした。最後の対処のところは、対処の方針までは人が決めて、それを実行するPlaybook 生成は AI、という役割分担のように見えました。徐々に 人の役割を剝がせきているような印象があります。

モノとしては 36:17から登場する画面が気になります。Ansible Lightspeed へのプロンプトを入力する欄があるのですが、これも ADT の機能なのでしょうか。ADT はコレクションの開発者向けのモノだと思っていたのですが、今回認識をあらためました。

プロンプト入力画面。動画 36:56 頃 のキャプチャ

Policy as Code も気になります。Policy as Code は Red Hat Summit 側のキーノート Optimizing IT for the AI era の 39:10 頃からも話がありました。

参考:

おわりに

キーノートでネットワーク自動化の話があったのは嬉しかったです。

去年(2023)は、Event-Driven Ansible と Ansible Lightspeed with IBM Watson Code Assistant の話が多かったですが、今年はそこまで目立っていませんでした。ただ、eda-server のリポジトリを眺めていると、開発は着々と続いているようです。UI 統合?もありそうで、正常進化していくのかなと思います。また、Lightspeed という言葉は Ansible にとどまらず Red Hat Ligthspeed という言葉も出てきました(あまり追えていません)。

とりあえず AAP 2.5 がどのようになるのか気になっています。現状の AAP 2.4 のサポート状況をを見ると、2024年10月くらいにリリースされるのかなと予想しています。

最後に、引き続きウォッチしていきたいキーワード的なことをまとめておきます。

参考情報