h9803660ブログ

ネットワーク関連の技術検証のメモ、ネットワーク製品動向、投資のこと等を気が向いた時に書くかもしれません。

AristaNetworks cEOS-labのインストールと起動(Docker for Windows)

はじめに

AristaNetworks社の製品について業務で少し関わっており、気軽に触りたい環境を作りたいと考えていた。 Arista社にはハイパーバイザー上で利用できるvEOS※という仮想版がリリースされてはいるものの、必要とされるメモリが2G程度で少々自宅のパソコンにいれるには厳しかったが、コンテナ環境で利用できるcEOSがリリースされている(メモリは600M程度で動く)のでそれを試しに入れてみた際のメモである。 本当はLinuxサーバマシンで試そうと思ったのだが、Windows10マシンを新規に購入したのでDocker for Windowsでも動くのかまず試すことにした。

※正確にいうとlab版とそうでないものに分かれている。簡単には以下。

名称 説明
vEOS 商用版。購入の必要あり。
vEOS-lab 評価用。Arista.comからダウンロード可能。
cEOS 商用版。購入の必要あり。
cEOS-lab 評価用。Arista.comからダウンロード可能。

インストール手順

1.Arista社のサイトからcEOS-labのイメージダウンロード(ユーザ登録が必要)。

今回はcEOS-lab4.21.1Fを利用。

2.import※

※Docker for Windowsをインストールしていること前提で記載しています。自分はWindows10Proの64bitマシンを使用した。

docker import cEOS-lab.tar ceos:latest

3.create

docker create --name=ceos --privileged -p 443:443 -e CEOS=1 -e container=docker -e EOS_PLATFORM=ceoslab -e SKIP_ZEROTOUCH_BARRIER_IN_SYSDBINIT=1 -e ETBA=1 -e INTFTYPE=eth -i -t ceos:latest /sbin/init

4.ネットワークの作成

EOS Centralにも以下記述が記載されているのですが、eth0は使えないようなのでeth1以降を設定することにする。

Note: Connection to docker0 is created by default when no network parameters are specified in docker create. Ethernet0 interface cannot be used and is not available inside the Cli shell.

docker network create net1 docker network create net2 docker network connect net1 ceos docker network connect net2 ceos

5.コンテナ起動

docker start ceos

6.EOSのCLI

先ほど作ったコンテナネットワークのnet1とnet2につながっているEthernet1とEthernet2が作成されている。

まとめと今後やりたいこと

Docker for Windowsでちゃんと動くのかなぁという好奇心もあり、ひとまずWindowsマシンでcEOSを建ててみました。 今回は単純に1ノードのみ作成しましたが、マルチノードやAPI叩いたりやっていきたいです。 もっと早くにチャレンジしたかったのですが、年明けてからの実施になってしまった・・・。

本記事はすでにcEOSについて記載されている以下の記事も参考にさせて頂きました。

https://qiita.com/arashi1977/items/1f728035670c0a57dffd

https://tekunabe.hatenablog.jp/entry/2018/12/17/arista_cEOS-lab_one

その他

元記事

qiita.com

Cisco MerakiのWebhooksを試してみた

背景

個人で使えるCisco Merakiの評価機を幸運にも所有している。 たまたま目に入ったWebhooks(まだベータ版らしい)の機能が目についたのでお試しに使ってみた。 自分への備忘録を兼ねて投稿します。 一部Cisco Merakiを触ったことがある人/知っている人しかわからない用語等も含まれます。

Webhooksの設定画面

ダッシュボードを開き、ネットワーク全体→設定→アラートを選択すると一番下の画面にこんな設定画面があります。

ここでWebhookを受信するHTTPサーバを追加設定します。 HTTPサーバを追加をクリックするとこんな感じで任意の名前とHTTPサーバのURL等を記載することになります。

当初このHTTPサーバをどうしようかと思ってMerakiの英語のコミュニティを見ていたところ、Zapier(多数のアプリを組み合わせて自分ならのワークフローが作れるintergration Platform as a Service)が使えるよ!って書いてあるのを見て調べたのですが、 どうやらZapierの無料版ではWebhookの機能は使えない(Premiumのマークがついてました)ようなので途方に暮れていたところ、 Googleスプレッドシートで試せるようなのでそちらに方向転換しました。

Webhooksを使うためのステップ

とてもシンプルでこの4つのステップを実行するだけです。

1.Googleスプレッドシートを作成 2.GitHubに公開されているコードを持ってきてコピー 3.Webアプリ公開 4.MerakiダッシュボードにWebhookの設定を投入

1.Googleスプレッドシートを作成

新規にGoogleスプレッドシートを開いてツール→スクリプトエディタを選択します。すると下のような画面になります。

2.GitHubに公開されているコードを持ってきてコピー

GitHubここからコード(code.gs)を持ってきてスクリプトエディタの初期から記載されているコード.gsの内容を入れ替えます。

3.Webアプリ公開

公開→ウェブアプリケーションとして導入を選択

次に下のような画面がでてくるのでWho has access to the appのところはAnyone,even anonymousを選択してDeployを押してください。 ※Execute the app asは自分のメアドが表示されてしまうのでマスキングしてます。 Deployが終了するとWeb whook用のURLの宛先が表示されるのでこのURLをコピーします。

4.MerakiダッシュボードにWebhookの設定を投入

MerakiダッシュボードのWebhooksに戻り先ほどコピーしたURLを登録します。

ネットワーク全体→設定→アラートを開いた一番上のアラート設定の受信者に先ほど登録したWebhook用のサーバを登録しましょう。 今回はWebhook:GoogleSheetという名前になっています。

確認作業

保存した後はWebhookのテストを実施します。Webhooksの設定箇所でWebhookテストが実施可能です。 成功すると緑色、失敗すると赤になります。自分は最初URLを最後までコピーしてなくて失敗しました。

次に設定可能なパラメータを何か変更して見て設定変更がGoogleスプレッドシートに反映されるか見てみます。 一部情報を非表示にしたりしてますが、スプレッドシートにアラート情報を受け取っていることはわかるかと思います。

まとめ

直接Webhookの設定をするのは初めてでした。やっぱり自分の手である程度やらないとイメージもわかないので、 思い立ったが吉日でやってみた結果、多少理解度が深まった気がします。 設定変更が発生したらSlackやTEAMSに通知みたいなこともゆくゆくは試してみたいですね。

参考

今回の検証はほとんどCisco Devnetのコンテンツを参照して実施してます。 https://developer.cisco.com/meraki/build/meraki-dashboard-alerts-with-google-sheets/

元記事

qiita.com