てくなべ

インフラ、ネットワーク、自動化などの技術的なことを書いていきます。

検証機にちょっと貼りたいマスキングテープ等貼ってはがせるテープレビュー

f:id:akira6592:20170729225656p:plain

■ はじめに

ネットワーク機器やケーブルなどを識別したしときに
「ラベルテープを作るほどでもないけど普通の付箋はひらひらしてしまうし・・」と思ってマスキングテープを利用される方は結構いらっしゃるのでしょうか。
今回はいくつか使い勝手を比較してみたいと思います。すべて主観です。

■ 比較した製品

今回比較したテープは、以下の3タイプになります。

  • マスキングテープ系:おなじみアイテム
  • 付箋系:全面にノリがついていて好きな長さに切れるもの
  • その他:養生テープなど

具体的には以下7の七つの製品です。
(使用感のある写真でスミマセン)

【マスキングテープ系】

(1) カモ井加工紙 mt マスキングテープ

よく見かけるマスキングテープです。
www.amazon.co.jp

(2) ニトムズ 和紙テープ

カッターがついているのが特徴です。
https://www.nitomsonlinestore.com/show?product_code=S1209

(3) スコッチ ドラフティングテープ

こちらもカッターがついています。低粘着です。
product.rakuten.co.jp

【付箋系】

(4) ポストイット 強粘着ロール 12mm×10m 2巻 ディスペンサー

強粘着全面のり付箋のロールタイプです。
www.amazon.co.jp

(5) ヤマト メモックロールテープ NORK-25CH-6A

こちらも全面のり付箋のロールタイプです。
www.amazon.co.jp

【その他】

(6) TERAOKA P-カットテープ

いわゆる養生テープです。
www.teraokatape.co.jp

(7) 堀内カラー HCL パーマセルテープ

撮影で利用されるテープです。電気屋さんのカメラコーナーに売っていることがあります。
www.amazon.co.jp

■ 比較

各種ペンの書きやすさ、切り口のきれいさ、携帯性、コストで比較しました。

名前 油性マジック 油性ボールペン シャーペン 切り口 携帯性 コスト
(1)mtマスキングテープ × ×
(2)和紙テープ ×
(3)ドラフティングテープ ×
(4)強粘着ロール
(5)メモックロールテープ
(6)P-カットテープ ×
(7)パーマセルテープ × × ×

各種ペンの書きやすさの詳細

f:id:akira6592:20170729225345p:plain

■ 注意点

  • いずれも一時的な貼り付けを目的としているため、長時間の貼り付けはおすすめしません。
  • 今回は金属に貼り付けています。ものによっては紙に貼り付けるとはがすときに紙を破損することがあるのでご注意ください。

f:id:akira6592:20170729232221p:plain


■ まとめ

個人的には、油性のペンで書き込むのであればマスキングテープ系がお手頃で扱いやすいと思います。

7/21 ネットワーク自動化の勉強会を開催しました(Ansible/SaltStack/Netmiko/NAPALM)

2017/07/21 に 「ネットワークの自動化、何つかう?~自動化ツール紹介~」という発表をしました。 8a1-apc.connpass.com

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

www.slideshare.net

質疑応答ではsaltに関する質問が多かったように思います。まだ日本ではマイナーだからでしょうか。

なお、同じ内容を8/18にも開催する予定です。

8a1-apc.connpass.com

Juniperの仮想ファイアウォール(firefly perimeter/vSRX)を検証用にローカルに構築する

f:id:akira6592:20170715115057p:plain

■ はじめに

Juniper社は、検証用に仮想ファイアウォール(firefly perimeter/vSRX)のイメージファイルを提供しています。 イメージファイルはVagrant Cloud上(旧Atlas)にあります。 app.vagrantup.com

この記事では、ちょっとした操作感を簡単に試したり、ネットワーク自動化ツールとの連携を試したりする目的でローカルに環境を構築してCLI、Web GUIでログインできるところまでの手順を説明します。

環境

■ Virtual Box のインストー

今回は仮想化ソフトウェアとして Virtualboxを利用します。インストールしていない場合は以下のページからダウンロードしてインストールしておきます。 https://www.virtualbox.org/wiki/Downloads

Vagrant のインストー

仮想環境構築ソフトウェアとして Vagrant を利用します。インストールしていない場合は以下のページからダウンロードしてインストールしておきます。 https://www.vagrantup.com/downloads.html

仮想マシンの準備と起動

JUNOS用 vagrant プラグインのインストー

以下のコマンドで2つのプラグインをインストールします。

・コマンド

vagrant plugin install vagrant-junos
vagrant plugin install vagrant-host-shell

・ログ

D:\users\user\Documents\VirtualBox VMs\srx>vagrant plugin install vagrant-junos
Installing the 'vagrant-junos' plugin. This can take a few minutes...
Installed the plugin 'vagrant-junos (0.2.1)'!

D:\users\user\Documents\VirtualBox VMs\srx>vagrant plugin install vagrant-host-shell
Installing the 'vagrant-host-shell' plugin. This can take a few minutes...
Installed the plugin 'vagrant-host-shell (0.0.4)'!

Vagrantfileの作成(vagrant init)

以下のコマンドで Vagrantfile を作成します。

・コマンド

vagrant init juniper/ffp-12.1X47-D15.4

・ログ

D:\users\user\Documents\VirtualBox VMs\srx>vagrant init juniper/ffp-12.1X47-D15.4
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

仮想マシンの起動(vagrant up)

以下のコマンドで仮想マシンを起動します。

・コマンド

vagrant up

・ログ

D:\users\user\Documents\VirtualBox VMs\srx>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'juniper/ffp-12.1X47-D15.4'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'juniper/ffp-12.1X47-D15.4' is up to date...
==> default: Setting the name of the VM: srx_default_1500081122453_26114
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: root
    default: SSH auth method: private key
    default:
    default: Vagrant insecure key detected. Vagrant will automatically replace
    default: this with a newly generated keypair for better security.
    default:
    default: Inserting generated public key within guest...
    default: Removing insecure key from the guest if it's present...
    default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
Sorry, don't know how to check guest version of Virtualbox Guest Additions on this platform. Stopping installation.
==> default: Checking for guest additions in VM...
    default: No guest additions were detected on the base box for this VM! Guest
    default: additions are required for forwarded ports, shared folders, host only
    default: networking, and more. If SSH fails on this machine, please install
    default: the guest additions and repackage the box to continue.
    default:
    default: This is not an error message; everything may continue to work properly,
    default: in which case you may ignore this message.

なお、 イメージファイルが見つからない旨のエラーメッセージが表示された場合は、ffp-12.1X47-D15.4 の箇所があっているか、Vagrant Cloud上で確認してください。

https://app.vagrantup.com/juniper/

しばらくすると、Virtualbox マネージャーでも仮想環境が起動したことが確認できます

f:id:akira6592:20170715115356p:plain

■ Web GUIアクセスログインのための設定

ユーザ作成とパスワード設定

SSHlocalhost:2222 に接続します。(デフォルトで「2222→22」にポートフォワーディングが設定されています) なお、ログインのためのrootの秘密鍵は、vagrant up したフォルダの .vagrant\machines\default\virtualbox\private_key にあります。

ログインできたら、ユーザーの作成とパスワードの設定を行います。設定を反映するための commit も忘れずに行います。

root@vsrx% cli

root@vsrx> configure
Entering configuration mode

[edit]
root@vsrx# set system login user [ユーザー名] class super-user

[edit]
root@vsrx# set system login user [ユーザー名] authentication plain-text-password
New password: [パスワードを入力]
Retype new password: [パスワードを入力]

[edit]
root@vsrx# commit
commit complete

ポートフォワーディング設定

デフォルトだど仮想インターフェースがNATモードなので、WEB GUIアクセスするためにはポートフォワーディングの設定が必要になります。ここではVirtual Box側の設定として以下のように「8888→80」に設定します。

f:id:akira6592:20170715114549p:plain

■ Web GUIログイン確認

Webブラウザで http://localhost:8888 にアクセスして、先ほど作成したユーザーでログインでします。

f:id:akira6592:20170715114610p:plain

無事ログインできました。

仮想マシンのシャットダウン

vagrant halt

するか、通常のSRXと同じように

root@vsrx> request system power-off

のようにしてシャットダウンします。

■ さいごに

今回はなるべく少ない手順で構築したため、インターフェースが1つだったりとファイアウォールとしては体をなしていない状態ですが、とにかく「JUNOSのコマンド体系に慣れたい」「SRXのWeb GUI画面に慣れたい」といった用途には利用できるのではないでしょうか。 必要に応じてカスタマイズしていただければと思います。

第10回 Jenkins勉強会 の資料まとめ

参加できませんでしたが、2017/7/7 に第10回 Jenkins勉強会が実施されたそうです。 www.meetup.com

資料のまとめた見当たらなかったので、自分で探してこちらにまとめさせていただきます。

www.slideshare.net

www.slideshare.net

www.slideshare.net

www.slideshare.net

www.slideshare.net

www.slideshare.net

speakerdeck.com

ネットワーク自動化の勉強会を開催します(Ansible/SaltStack/Netmiko/NAPALM)

7月と8月にネットワーク自動化の勉強会を開催しますのでご案内いたします。(2回とも同一内容です。)

実施概要

近年、APIに対応していないネットワーク機器でも自動化できる方法が増えてきました。 一方で、「興味はあるけど、試してみる時間も環境もない!」という方も多いのではないでしょうか。

そんな方のために、自動化のためのツールやライブラリを使ってみた所感や、 それぞれの特徴などについてデモを交えながらご紹介します。 自動化ツール導入の参考にして下さい。

取り扱うルーツ

1.構成管理ツール

  • その1:Ansible
  • その2:SaltStack

2.Pythonライブラリ

  • その1:Netmiko
  • その2:NAPALM

※一部デモ実施予定

日時場所などの詳細は以下のconnpassのページをご覧ください。

7/21開催分 詳細

8a1-apc.connpass.com

8/18開催分 詳細

8a1-apc.connpass.com

よろしくお願いいたします。

Python 3 エンジニア認定基礎試験に合格しました

f:id:akira6592:20170612212149p:plain

2017/06/09 に「Python 3 エンジニア認定基礎試験」が開始されました。

www.pythonic-exam.com

6/10に受験して合格しましたので、感想や自分の勉強方法を書きたいと思います。

試験の感想

特にクセもなく、素直な問題が多く、基礎試験という名の通りとだ感じました。 公開されている各分野の出題率を確認するとわかりますが、基礎知識にあたるがよく出題されるようになっています。

勉強方法

利用した教材

試験の認定教材でもある、オライリーの「Pythonチュートリアル 第3版」を利用しました。 www.oreilly.co.jp

Pythonの公式サイトにもPythonチュートリアルのコンテンツがあるのですが、単純に紙が好きなので書籍を購入しました。 なお、書籍が想定しているバージョンは3.5.1です。

勉強の流れ

(1) 書籍の読み込み

Pythonチュートリアル 第3版」を一通り読み込みました。

なお、Pythonチュートリアルは、プログラミングの基礎についてはあまり書かれていません。 そのため、プログラミング自体の経験がない方は、必要に応じてもっと基礎的な内容を ていねいに説明した本を併せて読むほうが勉強を進めやすいかもしれません。

(2) 動作の確認

書籍を読んで気になった箇所はJupyter Notebook(厳密にはAzure Notebooks)に コードと自分用の説明を書いて「動くあんちょこ」としてまとめました。

(3) 問題の作成

まだこの試験対策の問題が見当たらなかったので、自分で問題を作って勉強仲間のコミュニティに出題していました。 正解と不正解の選択肢を考えて作ることで、勘違いしやすい仕様や曖昧な理解の箇所も整理できた気がします。


Pythonの基礎を身に付けるける良いきっかけになったと思います。 PythonにはNAPALMのように開発が活発なネットワーク機器向けのライブラリがありますし、Pythonが読めるとAnsibleの詳細な挙動も読み取れたりするので、今後もPythonとのお付き合いはこれからも続くと思います。

ネットワーク自動化関連の気になる書籍

ネットワーク自動化関連で、気になっている書籍が2つあるのでご紹介します。 どちらも現在のところ2017年8月発売予定となっています。

Network Programmability and Automation: Skills for the Next-generation Network Engineer

https://www.amazon.co.jp/dp/1491931256/

自動化に向けてネットワークエンジニアが身に着けるべきスキルについての書籍。 オライリーのサイトで、Early Release 版がチラ見できます。 https://library.oreilly.com/book/0636920042082/network-programmability-and-automation/toc

「そもそもJSONYAMLとは何か」といった説明もあり、結構基礎的なことも書かれているようです。


Mastering Python Networking

https://www.amazon.co.jp/dp/B06XPQV549/

Python をベースとしたネットワーク自動化についての書籍で、Ansibleについても書かれているようです。

以下引用です。

What you will learn

  • Review all the fundamentals of Python and the TCP/IP suite
  • Use Python to execute commands when the device does not support the API or programmatic interaction > with the device
  • Implement automation techniques by integrating Python with Cisco, Juniper, and Arista eAPI
  • Integrate Ansible using Python to control Cisco, Juniper, and Arista networks
  • Achieve network security with Python
  • Build Flask-based web-service APIs with Python
  • Construct a Python-based migration plan from a legacy to scalable SDN-based netwo