てくなべ (tekunabe)

ansible / network automation / 学習メモ

社内技術イベントで「無料で仮想Junos環境を手元に作ろう」という発表をしました

はじめに

弊社では年に数回、AP Tech Fest という社内向けの技術イベントを開催しています。(参考:2017年11月開催分

大体毎回何かしらの発表しているのですが、2018/07/18 開催分では「無料で仮想Junos環境を手元に作ろう」という発表をしました。

資料

最初から資料を社外公開できる内容で作っているので、資料を公開します。

www.slideshare.net

以下のエントリの内容をベースにしています。

tekunabe.hatenablog.jp

発表しようと思った経緯

4月からの新人研修で Cisco IOS を使ってCCNAや実機研修をされているところは多いと思いますが、実際業務についたら IOS以外を扱うことも多いです。例えば Juniper(Junos) を業務で使うことになって、自分でも勉強したいけど環境をどう作ったらよいか悩んでいる人向けに発表しました。時期としてもちょうどよいと思いましたので。

参考

www.ap-com.co.jp

Ansible Night in Fukuoka 2018.08 で「Ansibleではじめるネットワーク自動化」という発表をしてきました

f:id:akira6592:20180805164638p:plain:w400

■ はじめに

【祝】初福岡開催!

Ansible Nitght (旧Meetup)は2017年までは東京でのみの開催でしたが、2018年は他の場所でも開催されています。 7月には大阪で、そして8月3日には福岡で Ansible Night in Fukuoka 2018.08 が開催されました。

ansible-users.connpass.com

今回、ありがたいことにお話をいただきまして「Ansibleではじめるネットワーク自動化」をいう発表をさせていただきました。


■ 資料

私が発表に使用した資料はこちらです。

www.slideshare.net

時間の都合で紹介しきれなかったものを含め、サンプル(デモ動画あり)を6つ入れています。 内容的には、JANOG42 で発表した Ansibleネットワーク自動化チュートリアルの後半をベースにして、最後の方に「ハマりどころ」というセクションを追加しました。

■ togetter まとめ

@morita92hiro さんがまとめてくださりました。ありがとうございます。

togetter.com


■ 他の方の資料まとめ

他の方の資料は以下のページにアップされています。

https://ansible-users.connpass.com/event/93620/presentation/


■ ブロガー枠の方のレポート記事

ブロガー枠で参加された ambasad さんのレポート記事です。

dev.classmethod.jp

■ おまけ

会場の下にはクラスメソッドさんの福岡オフィス

今回の会場は博多駅から徒歩圏内の「福岡県Rubyコンテンツ産業振興センター」の5Fのセミナールームでした。 一つ下のフロアには2017年に開所されたクラスメソッドさん福岡オフィスさんがあると伺い、連れて行っていただきました。

classmethod.jp

2次元社員めそ子ちゃんのステッカーなどもいただきました。ありがとうございました! f:id:akira6592:20180805162447p:plain:w300

Ansible飯

Ansible飯という名の懇親会にも参加させていただきました。 地元の方に地元のメニューを選んでいただいたところに、優しさを感じました。ありがとうございました。


■ 感想など

当初どのくらいの人に来ていただけるか少々不安だったのですが、結果的には30人ほどの方にご参加いただけたようです。 これからも福岡、九州でコミュニティが盛り上がることを願っております。

それでも SlideShare を使う理由

■ はじめに

私は普段、発表資料を SlideShare へアップロードしています。

www.slideshare.net

しかし、2017年に SlideShareスライドが差し替えができない仕様に変わってしまいました。

私の観測範囲ではこの頃から Speaker Deck へ移行する方がちらほら見受けられました。 私自身もこれは厳しいと思い、移行先として Sperker Deck を試したりはしたのですが、また SlideShare に戻ってきました。 この記事ではその理由についてまとめたいと思います。


■ 1. 自動リンク機能があるから

f:id:akira6592:20180805150502p:plain

SlideShare はリンクが有効なドキュメントをアップロードすると、有効なままになってくれます。 よく、一次情報となる公式ドキュメントへのリンクなどをはったりするので、この機能は閲覧者にとって便利かなと思います。

Speaker Deck にはこの機能はないようです。


■ 2. YouTube動画差し込み機能があるから(現在は廃止)

f:id:akira6592:20180805150156p:plain

YouTube にアップロードした動画のURLを、スライドの任意の位置に差し込む事ができます。 私はなにかのデモ動画をスライドに差し込みたいときにこの機能を利用します。 スライド本体とは違って、差し込みは追加も変更も削除もできます。

動画が差し込まれているスライドは、左上に印が付きます。 以下、動画を差し込んだスライドの例です。P23、P29などに差し込んでいます。

www.slideshare.net

※ 2019/04/23 追記: 動画差し込み機能ですが、どうもできなくなってしまったようです。ツイッターを確認する限り複数の方が同様のことをコメントしていました。

f:id:akira6592:20190423151909p:plain
Edit YouTube Video タブがない
※ 2019/07/16 追記: 廃止の旨、公式案内がありました。

Adding YouTube Videos to a SlideShare Presentation – No Longer Available | SlideShare Help


■ 3. タイトルを変更してもURLが変わらないから

あとからタイトルを修正したり、「2018年度版」とか付けたりしたい時があるので、タイトルを変更したときにURLが変わらないのは助かります。twitter で流したあとにURL変わってしまうのは忍びないので。

SlideShare ではサイトにスライドをアップロードする際のタイトルを元にURLを生成しますが、日本語タイトルだと、URLがいまいちな感じになります。 そのため私は場合は、最初のアップロードの際は英語でタイトルを付けてそれらしいURLにした後に、日本語タイトルに直します。

なお、Speaker Deck はタイトルを変更するとURLが変わってしまいます。 ただ、以下の記事のようにスラッシュ区切りで英語タイトルを指定すれば、前半の日本語タイトル部分を変更してもURLは変わりません。

kakakakakku.hatenablog.com


■ まとめ

どのようなスライド共有サービスが良い方は、使い方と考え方次第だと思います。 私の場合は「自分がスライドを差し替えられない不便さの解消」より「閲覧者がリンクをクリックできる便利さ」を選びました。

Ansible もくもく会 (第4回)にメンターとして参加してきました #ansiblejp

Ansible ユーザー会主催の、Ansible もくもく会 (第3回)にメンター参加してきました。 ブログ枠で参加したわけではないですが、メンターって意外とハードル低いですよ、という感じを共有したく思います。

ansible-users.connpass.com

Ansibleもくもく会への参加は今回で3回目なので、そろそろと思っていました。 (第2回で成果共有枠で参加したときの記事

メンターは、参加者から質問があった時に答えたり、答えられなくても一緒に悩んだりするのが役割です。 メンター自体複数人いますし、他にもレッドハット社員の方もサポートしてくれたので、そんなに大変ではありませんでした。

当日の質問は、口頭やEtherPadというリアルタイムにみんなで書き込めるメモ帳のようなサービス上でやり取りしました。 以下のページでやり取りが残されています。

qiita.com

Ansibleもくもく会は今後も開催されますが、一般枠は倍率が高く当選しにくいです。 ある程度Ansibleの知識がある人は、まず「次回メンター枠」で参加して、様子を見た後に、次回「メンター枠」で参加されることをオススメします。

参考(参加された方のブログ)

tips-reports.blogspot.com

iryond.hatenablog.com

【JANOG42】私にとっての「つなぐ、つたえる、つみあげる」

f:id:akira6592:20180718183110j:plain

■ はじめに

2018/07/11 - 13 に三重県津市で開催された JANOG42 Meeting in Mie(ホスト:株式会社ZTV様)に参加してきました。

今回のテーマは開催地である津(つ)市にちなんで「つなぐ、つたえる、つみあげる」でした。 そこで、それぞれの点で簡単に振り返ってみたいと思います。


■ 「つなぐ」

f:id:akira6592:20180718182759j:plain 今回は、弊社の新人も一緒に参加しました。もちろん業界未経験ですし、このようなイベントにもはじめての参加です。 なので、私の知り合いのエンジニアにまざってもらって(前回のJANOG41のテーマは"かきまぜる"でしたね)、社外エンジニアと弊社新人をつなぐことができました。 お相手したくださったエンジニアのみなさん、ありがとうございました。


■ 「つたえる」

f:id:akira6592:20180718174324j:plain 以下の記事通り「Ansible ネットワーク自動化チュートリアル」という発表をさせていただきました。

tekunabe.hatenablog.jp

はじめてAnsibleを知るネットワークエンジニアに、Ansibleがどんなものか、どんなことができるか、などをデモ動画も交えておつたえしました。


■ 「つみあげる」

f:id:akira6592:20180720145618p:plain

アーカイブ配信動画より)

IPv6アドレスの番号計画、どうしてますか。〜 あれっ、みんなどうしてんだろう 〜」というセッションの質疑応答の時間で、質問をさせていただきました。JANOGの参加は今回が2回目なのですが、質問のマイクに立つのはこれが初めてでした。小さなことですが、私にとっては新しい経験をつみあげるかたちとなりました。

goto_ipv6 さん、ツイートありがとうございます。

【JANOG42】Ansible ネットワーク自動化チュートリアルを発表してきました

■ はじめに

2018/07/11 - 13 に三重県津市で開催された JANOG42 Meeting in Mie(ホスト:株式会社ZTV様)で「Ansible ネットワーク自動化チュートリアル」を発表してきました。

Ansible ネットワーク自動化 チュートリアル :: JANOG42

Ansibleの初心者向けのチュートリアルとなります。 主にサーバ向けの構成管理ツールとして利用されるAnsibleですが、近年はネットワークの構成管理および自動化ツールとしても利用されるようになっております。 今回はこれからAnsibleを始められる方や初心者向けに、概要/基礎から簡単なプレイブックの書き方などを紹介して参ります。

ありがたいことにご縁がありまして、レッドハットの北山さんからのお誘いで共同セッションという形になりました。

f:id:akira6592:20180718174324j:plain

■ 資料(デモ動画付き)

www.slideshare.net


■ 動画(2018/08/31 12:59 (JST)まで)

以下のページの下のほうから当日の動画が視聴できます。 はじめから 42:00 頃までが前半の北山さんパート、 42:00 頃以降が後半の私のパートです。

Ansible ネットワーク自動化 チュートリアル :: JANOG42


■ 内容

前半の北山さんパート(~P43)で、ネットワーク自動化を取り巻く環境やポイント、Ansibleの特徴、各コンポーネントの概要をご紹介しました。

後半の私のパート(P44~)で、ネットワーク機器対応の仕組みや、利用方法、デモ動画付きのサンプルをご紹介しました。


■ 感想など

準備

はじめて Ansible を知るネットワークエンジニアの方を対象として内容を決めていきました。 限られた発表時間の中で、例えば、YAMLをどこまで詳しく説明するか、どの程度の難易度にするかなど悩みました。特にどのようなサンプルを乗せるかを悩みました。

まず、showコマンドによる情報取得編と、setコマンドによる設定変更編に分けて考えました。そのうえで、それぞれ難易度低、中、高(相対的にですが)の3つずつ、レベルを少しずつ上げて紹介して理解していただきやすいように枠を組みました。

あとは、普段ネットワークに接している人がピンときやすいようなサンプルを考えました。 全体としては「はじめての自分にも使えそう」という期待感と「こんなこともできるのか」という期待感の、2つの期待感を持っていただけるように意識しました。

細かいところですが、デモ動画のキャプチャーは普段ScreenToGifというWindows対応のツールを使っています。トリミングなどの簡単な編集もできるのでよく使っています。 撮った動画は当日再生するためにmp4で保存おき、YouTubeにもアップして、あとでSiledeShareに差し込めるようにしておきました。SlideShareで資料を見たときに左上に YouTube Video inside という印があるのが動画を差し込んでいる目印です。

当日

スケジュールと会場の都合で、開始予定時刻になっても人がほとんどいらっしゃらなくて、正直焦ってりました・・・。結果的には、開始時刻を10分遅らせて開始しました。どうにか調整が効く範囲内だったので、予定終了時刻に発表を終えることができました。

発表後、参考になったなどのフィードバックをいただたのが嬉しかったです。 ただ一方で、JANOGは運用者がメインのコミュニティだと思いますので、運用面でのノウハウ等も含められると良かったのかなという面もありました。


■ さいごに

今回は、JANOG Meetingという大きなイベントにおいて、90分という長時間の枠をいただき、貴重な体験をさせていただきました。 ホストの株式会社ZTV様各スタッフのみなさま、ご参加いただいたみなさま、ありがとうございました。

Interact 2018 に参加してきました(k8s / MS SDN / Ansible / Azure)

■ はじめに

Interact 2018 というイベントに参加してきました。私は今回がはじめての参加でしたが、今年で5年目だそうです。

interact.connpass.com

twitter.com

マルチセッション形式だったのですが、私は以下の4セッションに参加しました。

それぞれ、簡単に振り返りたいと思います。


■ 今からはじめる Kubernetes 入門

Kubernetesについてはあまり知らないのですが、Docker の特徴や、 Kubernetes で何が嬉しいか、などがふわっと分かった気がします。 Node、Pod、Service、等の構成要素の名前は聞いたことがあったのですが、図解を見て整理できました。 コンテナを落としても自動復旧されるようなでデモも見れました。


PowerShell of Microsoft SDN v2 101

www.slideshare.net

PowerShellMicrosoft SDN v2 を操作するデモを多数見れました。 仮想ネットワーク、仮想マシンのつなぎ込み、VPN接続など、様々なことをPowerShellでやっていました。 初めて知ったのですが、101(ワンオーワン)とは、入門や基礎といった意味だそうです。


■ Ansible x Windows: AnsibleではじめるWindows自動化

あまり情報のない、WindowsをAnsibleで自動化する方法や、トラブルシューティング方法などが紹介されていました。 既存のマイクロソフト製品などを利用してうまくいっている場合は無理にAnsibleを利用しなくてもよさそうですが、Linuxも一緒に管理している場合、まとめてAnsibleを利用すると統一感がでるので、これも手かなと思いました。 接続方式であるWinRMのエラーメッセージが具体的でなく、ちょっとハマりどころなような印象もうけました。なので資料中のトラブルシューティング方法は要チェックかと思います。

いくつか、紹介されていた内容に対応する公式ソースのリンクを補足させていただきます。


Microsoft Azure Global VNet Peering

(資料発見したらリンク貼る予定)

10リージョンを VNet ピアリングするPowerShellスクリプトを流しているデモの間に、Azureのネットワークを説明するというエキサイティングなセッションでした。PowerShellは30行程度でした。 ここまで自動化できると設計思想も変化を求められるのだと感じました。 マイクソフトさんは、ものすごいしっかりとしたグローバルなネットワークを保有している事もわかりました。


■ さいごに

魅力的なセッションが多数あったため、なかなか迷いました。 登壇者のみなさま、運営スタッフのみなさま、会場提供の日本マイクロソフトさん、ありがとうございました。 来年も参加したいと思います。