SlideShare a Scribd company logo
1 of 29
©APRESIA Systems all right reserved.
Rev.1
ネットワークプログラマビリティ勉強会
GNS3上の仮想アプライアンス+GitLabRunner+BDDによる
テスト自動化
ネットワークプログラマビリティ勉強会
第17回 ショートプログラム
次世代技術本部 技術開発部
次世代ソフトウェアグループ
坪田 繁
2019.6
2ネットワークプログラマビリティ勉強会 Rev.1
JANOG41にて、実機上のL2リング設定 and 障害切替試験のテスト自動化をご説明
実機確保して配線してファーム更新大変
そもそも機材ないと話になんないし
そろそろ仮想化環境もほしいな・・・。
いうことで
仮想アプライアンスを試作!
現状NetConfで、正式にはCLIを作成予定
GNS3を触ってみて(初心者)、仮想ネットワーク(OSPFv2)を自動構築(設定)
正常時、障害時の経路切替確認を自動テストしてみましたっ!
そのときの知見やハマりポイントなどを、7分間でできる限り共有できればっ!
モチベーション
3ネットワークプログラマビリティ勉強会 Rev.1
JANOG41にて、実機上のL2リング設定 and 障害切替試験のテスト自動化をご説明
実機確保は時期によっては結構大変
機材なくても試験したいっ!
いうことで
仮想アプライアンスを試作!
現状NetConfで、正式にはCLIを作成予定
GNS3を触ってみて(初心者)、仮想ネットワーク(OSPFv2)を自動構築(設定)
正常時、障害時の経路切替確認を自動テストしてみましたっ!
そのときの知見やハマりポイントなどを、7分間でできる限り共有できればっ!
モチベーション
4ネットワークプログラマビリティ勉強会 Rev.1
JANOG41にて、実機上のL2リング設定 and 障害切替試験のテスト自動化をご説明
実機確保は時期によっては結構大変
機材なくても試験したいっ!
ということで
◊仮想アプライアンスを試作!
−現状NetConfで、CLI対応中
◊(初心者) GNS3上に仮想ネットワーク(OSPFv2)を自動構築し切替試験実施
◊そのときの知見やハマりポイントなどを、9分間でできる限り共有できればっ!
モチベーション
5ネットワークプログラマビリティ勉強会 Rev.1
システム構成
docker network
仮想環境
behave
6ネットワークプログラマビリティ勉強会 Rev.1
システム構成
仮想環境
7ネットワークプログラマビリティ勉強会 Rev.1
area 0
10.0.1.3
PC2
試験に用いたGNS3上の仮想ネットワーク構成
OSPF確認用
独自アプライアンス
PC1
仮想アプライアンスに
外部からアクセス可
AP-1
AP-2
AP-3
8ネットワークプログラマビリティ勉強会 Rev.1
下記サイトを参考
◊ https://gns3-server.readthedocs.io/en/latest/endpoints.html
RESTのPythonラッパー
◊ Requestsモジュールがあり、HTTPリクエスト発行が可能
− https://github.com/adosztal/gns3-automation
REST APIを用いてGNS3上の仮想ネットワークを構築
$ curl -X POST "10.249.29.244:3080/v2/projects" -d '{"name": "test"}’
応答(抜粋)
{ "name": "test",
"path": "/home/cgmame/GNS3/projects/f1324514-c0d5-43ba-ae97-4995d5f6abe8",
"project_id": "f1324514-c0d5-43ba-ae97-4995d5f6abe8“ }
$ curl -X POST "10.249.29.244:3080/v2/projects/f1324514-c0d5-43ba-ae97-
4995d5f6abe8/appliances/302a8ea7-ff14-4069-9df5-572c10707ed7" -d '{"x":-439, "y":-10}’
~応答抜粋~
{ "name": "AP-1",
"node_id": "997b546e-edbe-45d2-a0c7-bb36b220311f",
"status": "stopped",
"width": 150,
"x": -439,
"y": -10 }
①testプロジェクト作成
プロジェクトIDプロジェクトID
②testプロジェクト上にノード配置
ノードIDはノード間のリンク等に使用
ノードの開始状態を別途確認
9ネットワークプログラマビリティ勉強会 Rev.1
behave
システム構成
仮想環境
10ネットワークプログラマビリティ勉強会 Rev.1
AP-1
AP-2
AP-3
d
テスト内容:4パターン(19項目の試験を実施)
d
d
③リンク復旧→経路も復旧
ifconfig ethX up
AP-1
AP-2
AP-3
d
④コスト極大→SPF再計算し経路変更
コスト65000
AP-1
AP-2
AP-3
②経路断→SPF再計算し経路変更
ifconfig ethX down
AP-1
AP-2
AP-3
①全経路のコストが同一(デフォルト)
11
テストケースと具体的な実装を分けるための仕組み
◊Webの受け入れテストで、よく使われるフレームワーク
テストケース (Featureファイル)
ユーザ視点でのテスト項目を
書式ありの自然言語で記述
Scenario
Given: 事実(試験環境)
When: トリガーイベント
Then: 期待動作
実装 (Stepファイル)
Given/When/Thenの
内容をプログラム
Scenario
Given: 事実(試験環境)
When: トリガーイベント
Then: 期待動作
Featureから
Stepを実行
BDD (Behavior Driven Development) のイメージ
12ネットワークプログラマビリティ勉強会 Rev.1
BDD + Python でテスト実装し、GitLabでソース管理
テストケース
(Feature : Gherkin書式)
テスト実装
(Step : Python)
ncclientモジュール
の簡易ラッパ作成
behave
13ネットワークプログラマビリティ勉強会 Rev.1
システム構成
仮想環境
behave
14ネットワークプログラマビリティ勉強会 Rev.1
まず、継続的インテグレーションツールについて
◊アプリケーションのビルドや単体テストのオペレーションを自動化し、品質維持する
ためのツール
−Jenkins, Travis CI, Circle CI などが有名
◊メリット
−品質の維持
−作業コストの削減
−継続的な分析と改善
GitLabでは、GitLab CI/CDのジョブ機能を使うことで実現可能
◊Webインタフェース
継続インテグレーション(CI)とGitLab Runner
15ネットワークプログラマビリティ勉強会 Rev.1
GitLab CI/CD Webインタフェース
16ネットワークプログラマビリティ勉強会 Rev.1
GitLab Runner
◊GitLab CI/CDから指示されたスクリプトを実行したり、一時的にDockerコンテナを
制御してジョブを実行するプロセス
Exceutor
◊実際にジョブ(≒今回はテスト)を実行するプラットフォーム
−https://docs.gitlab.com/runner/executors/
−Dockerを利用
GitLab Runner (CI)
17ネットワークプログラマビリティ勉強会 Rev.1
システム構成
仮想環境
behave
18ネットワークプログラマビリティ勉強会 Rev.1
Gitlab Runnerの作成
◊ runnerの登録/起動
ジョブの設定(.gitlab-ci.yml)
YAMLで記述
仮想環境の構築
behaveによるテスト実行
テスト結果のHTML変換&Upload
リポジトリのトップディレクトリにコミット
Runnerの設定(config.toml)
コンテナの起動オプションを指定
docker networkのをL2にて作成
将来的にsyslogを取得するため
ーー
ーー
ーー
構築の流れ 〇runner登録イメージ
$ docker run --rm -t -i -v /srv/gitlab-runner-auto08/config:/etc/gitlab-runner
-v /var/run/docker.sock:/var/run/docker.soc 
--name gitlab-runner-auto08 gitlab/gitlab-runner register 
--non-interactive 
--executor "docker" 
--docker-image at_run:latest 
--url http://10.249.29.246 
--registration-token “xxxxxxxxxxxxxxxxxxxx" 
--description "TestAutomation08" 
--tag-list “auto08"
Settings→CI/CDの
Set up a specific Runner manually
〇runner起動イメージ
$ docker run -d --name gitlab-runner-auto08 --restart always 
-v /srv/gitlab-runner-auto08/config:/etc/gitlab-runner 
-v /var/run/docker.sock:/var/run/docker.sock 
gitlab/gitlab-runner:latest
behave
19ネットワークプログラマビリティ勉強会 Rev.1
Gitlab Runnerの作成
◊ runnerの登録/起動
ジョブの設定(.gitlab-ci.yml)
◊ YAMLで記述
− 仮想環境の構築
− behaveによるテスト実行
− テスト結果のHTML変換&Upload
◊ リポジトリのトップディレクトリにコミット
Runnerの設定(config.toml)
コンテナの起動オプションを指定
docker networkのをL2にて作成
将来的にsyslogを取得するため
ーー
ーー
ーー
構築の流れ
〇.gitlab-ci.yml設定(抜粋・加工)
job_run_test:
script:
- echo “${PWD}”
- wget http://xxx/api/files/${PARAMFILE} -O parameters.py
- cat ./parameters.py
- source ./run.sh || true
allow_failure: true
tags:
- auto08
only:
variables:
- $PARAMFILE
behave
20ネットワークプログラマビリティ勉強会 Rev.1
Gitlab Runnerの作成
◊ runnerの登録/起動
ジョブの設定(.gitlab-ci.yml)
◊ YAMLで記述
− 仮想環境の構築
− behaveによるテスト実行
− テスト結果のHTML変換&Upload
◊ リポジトリのトップディレクトリにコミット
Runnerの設定(config.toml)
◊ コンテナの起動オプションを指定
docker networkのをL2にて作成
将来的にsyslogを取得するため
ーー
ーー
ーー
構築の流れ
〇config.toml設定(抜粋・加工)
[[runners]]
name = "TestAutomation08"
url = "http://10.249.29.246"
token = “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
executor = "docker"
[runners.custom_build_dir]
[runners.docker]
image = "at_run:latest"
allowed_images = ["at_run:latest"]
privileged = true
disable_entrypoint_overwrite = false
network_mode = "mcv"
pull_policy = "if-not-present"
behave
21ネットワークプログラマビリティ勉強会 Rev.1
Gitlab Runnerの作成
◊ runnerの登録/起動
ジョブの設定(.gitlab-ci.yml)
◊ YAMLで記述
− 仮想環境の構築
− behaveによるテスト実行
− テスト結果のHTML変換&Upload
◊ リポジトリのトップディレクトリにコミット
Runnerの設定(config.toml)
◊ コンテナの起動オプションを指定
docker networkのをL2にて作成
◊ 将来的にsyslogを取得するため
ーー
ーー
ーー
構築の流れ
docker network
behave
22ネットワークプログラマビリティ勉強会 Rev.1
前提:フラットなネットワークが必要&社内のIPリソースの制約⇒DockerのIPはDHCP
docker 1.13.1(以前に確認)では、bridgeによるdocker networkで問題なく動作
docker 18.09.5ではGWの外に出れず!
そこで、原因不明だがmacvlanを知ったので試してみたらOKになった!
https://docs.docker.com/network/macvlan/
ただ、
Docker Network 構築時にハマった箇所
〇bridgeによるdocker network構築
$ sudo docker network create 
--driver bridge 
--subnet=10.249.28.0/23 --opt "com.docker.network.bridge.name"=“docker4095" --gateway=10.249.29.246 $NAME
23ネットワークプログラマビリティ勉強会 Rev.1
前提:フラットなネットワークが必要&社内のIPリソースの制約⇒DockerのIPはDHCP
docker 1.13.1(以前に確認)では、bridgeによるdocker networkで問題なく動作
docker 18.09.5ではGWの外に出れず!
そこで、原因不明だがmacvlanを知ったので試してみたらOKになった!
−https://docs.docker.com/network/macvlan/
ただ、ホストと通信はできないためGitLab Runnerは別ホストに配置
Docker Network 構築時にハマった箇所
〇macvlanによるdocker network構築
$ docker network create -d macvlan --subnet=10.249.28.0/23 --gateway=10.249.28.1 -o parent=ens160 mcv
〇bridgeによるdocker network構築
$ sudo docker network create 
--driver bridge 
--subnet=10.249.28.0/23 --opt "com.docker.network.bridge.name"=“docker4095" --gateway=10.249.29.246 $NAME
24ネットワークプログラマビリティ勉強会 Rev.1
システム構成
docker network
仮想環境
装置IP/NAME等のparameterをPython dictionaryに
変換したスクリプトファイルを渡す
別ホスト
behave
25ネットワークプログラマビリティ勉強会 Rev.1
Thank you !
Rev.1
ネットワークプログラマビリティ勉強会
補助資料
27ネットワークプログラマビリティ勉強会 Rev.1
実行結果確認画面
28ネットワークプログラマビリティ勉強会 Rev.1
実行結果確認画面
29ネットワークプログラマビリティ勉強会 Rev.1
実行結果確認画面

More Related Content

What's hot

OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!Takashi Sogabe
 
Router board勉強会vol2(配布用)
Router board勉強会vol2(配布用)Router board勉強会vol2(配布用)
Router board勉強会vol2(配布用)milk hanakara
 
TripleOの光と闇
TripleOの光と闇TripleOの光と闇
TripleOの光と闇Manabu Ori
 
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化Takuya ASADA
 
さくらのクラウドでVyOS使ってみた
さくらのクラウドでVyOS使ってみたさくらのクラウドでVyOS使ってみた
さくらのクラウドでVyOS使ってみたSAKURA Internet Inc.
 
知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月
知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月
知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月VirtualTech Japan Inc.
 
Router board勉強会vol2(ベンチマーク班まとめ)
Router board勉強会vol2(ベンチマーク班まとめ)Router board勉強会vol2(ベンチマーク班まとめ)
Router board勉強会vol2(ベンチマーク班まとめ)milk hanakara
 
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHDevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHi_yudai
 
Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Manabu Ori
 
サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)snicker_jp
 
H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編
H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編
H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編irix_jp
 
Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続Tomoya Hibi
 
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)さくらインターネット株式会社
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1Kotaro Noyama
 
ベアメタルプロビジョニング
ベアメタルプロビジョニングベアメタルプロビジョニング
ベアメタルプロビジョニングVirtualTech Japan Inc.
 
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~Recruit Technologies
 
Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」Takuya ASADA
 

What's hot (20)

OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!OpenContrailのソースコードを探検しよう!
OpenContrailのソースコードを探検しよう!
 
Cloud Foundry varz
Cloud Foundry varzCloud Foundry varz
Cloud Foundry varz
 
Router board勉強会vol2(配布用)
Router board勉強会vol2(配布用)Router board勉強会vol2(配布用)
Router board勉強会vol2(配布用)
 
VyOSでMPLS
VyOSでMPLSVyOSでMPLS
VyOSでMPLS
 
TripleOの光と闇
TripleOの光と闇TripleOの光と闇
TripleOの光と闇
 
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
 
さくらのクラウドでVyOS使ってみた
さくらのクラウドでVyOS使ってみたさくらのクラウドでVyOS使ってみた
さくらのクラウドでVyOS使ってみた
 
知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月
知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月
知っておくべきCephのIOアクセラレーション技術とその活用方法 - OpenStack最新情報セミナー 2015年9月
 
Router board勉強会vol2(ベンチマーク班まとめ)
Router board勉強会vol2(ベンチマーク班まとめ)Router board勉強会vol2(ベンチマーク班まとめ)
Router board勉強会vol2(ベンチマーク班まとめ)
 
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHDevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSH
 
Pgcon2012 ori-20120224
Pgcon2012 ori-20120224Pgcon2012 ori-20120224
Pgcon2012 ori-20120224
 
サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)
 
H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編
H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編
H26第1回 沖縄オープンラボラトリ・ハンズオンセミナー:ボリューム操作編
 
Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続Lagopus + DockerのDPDK接続
Lagopus + DockerのDPDK接続
 
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
 
ベアメタルプロビジョニング
ベアメタルプロビジョニングベアメタルプロビジョニング
ベアメタルプロビジョニング
 
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
 
【さくらのクラウド】ローカルルータ導入ガイド
【さくらのクラウド】ローカルルータ導入ガイド【さくらのクラウド】ローカルルータ導入ガイド
【さくらのクラウド】ローカルルータ導入ガイド
 
Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」Seastar in 歌舞伎座.tech#8「C++初心者会」
Seastar in 歌舞伎座.tech#8「C++初心者会」
 

Similar to GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化

今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門Masahito Zembutsu
 
Gws 20130315 gradle_handson
Gws 20130315 gradle_handsonGws 20130315 gradle_handson
Gws 20130315 gradle_handsonNobuhiro Sue
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Masahito Zembutsu
 
The Next Generation for C# Developers
The Next Generation for C# DevelopersThe Next Generation for C# Developers
The Next Generation for C# DevelopersTakayoshi Tanaka
 
Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)akira6592
 
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) 泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) Akihiro Kuwano
 
Wasm blazor and wasi 2
Wasm blazor and wasi 2Wasm blazor and wasi 2
Wasm blazor and wasi 2Takao Tetsuro
 
GCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & Apps
GCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & AppsGCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & Apps
GCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & AppsGoogle Cloud Platform - Japan
 
[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送
[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送
[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送Google Cloud Platform - Japan
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!ksk_ha
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...NTT DATA Technology & Innovation
 
VirtualBox と Rocky Linux 8 で始める Pacemaker ~ VirtualBox でも STONITH 機能が試せる! Vi...
VirtualBox と Rocky Linux 8 で始める Pacemaker  ~ VirtualBox でも STONITH 機能が試せる! Vi...VirtualBox と Rocky Linux 8 で始める Pacemaker  ~ VirtualBox でも STONITH 機能が試せる! Vi...
VirtualBox と Rocky Linux 8 で始める Pacemaker ~ VirtualBox でも STONITH 機能が試せる! Vi...ksk_ha
 
GoBGP活用によるSD-WANプラクティス
GoBGP活用によるSD-WANプラクティスGoBGP活用によるSD-WANプラクティス
GoBGP活用によるSD-WANプラクティスToshiki Tsuboi
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
PostgreSQL v9.5の新機能~CustomScan/Join Interface
PostgreSQL v9.5の新機能~CustomScan/Join InterfacePostgreSQL v9.5の新機能~CustomScan/Join Interface
PostgreSQL v9.5の新機能~CustomScan/Join InterfaceKohei KaiGai
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Mori Shingo
 

Similar to GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化 (20)

今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
 
Gws 20130315 gradle_handson
Gws 20130315 gradle_handsonGws 20130315 gradle_handson
Gws 20130315 gradle_handson
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
The Next Generation for C# Developers
The Next Generation for C# DevelopersThe Next Generation for C# Developers
The Next Generation for C# Developers
 
[DL Hacks]FPGA入門
[DL Hacks]FPGA入門[DL Hacks]FPGA入門
[DL Hacks]FPGA入門
 
Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)
 
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) 泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
 
Wasm blazor and wasi 2
Wasm blazor and wasi 2Wasm blazor and wasi 2
Wasm blazor and wasi 2
 
Grailsのススメ(仮)
Grailsのススメ(仮)Grailsのススメ(仮)
Grailsのススメ(仮)
 
GCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & Apps
GCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & AppsGCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & Apps
GCP & Gaming 〜平成最後のアップデート〜 | Google Cloud INSIDE Games & Apps
 
[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送
[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送
[Cloud OnAir] Google Networking Deep Dive ! その技術と設計の紹介 2018年8月9日 放送
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!
 
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
 
Ptt391
Ptt391Ptt391
Ptt391
 
VirtualBox と Rocky Linux 8 で始める Pacemaker ~ VirtualBox でも STONITH 機能が試せる! Vi...
VirtualBox と Rocky Linux 8 で始める Pacemaker  ~ VirtualBox でも STONITH 機能が試せる! Vi...VirtualBox と Rocky Linux 8 で始める Pacemaker  ~ VirtualBox でも STONITH 機能が試せる! Vi...
VirtualBox と Rocky Linux 8 で始める Pacemaker ~ VirtualBox でも STONITH 機能が試せる! Vi...
 
GoBGP活用によるSD-WANプラクティス
GoBGP活用によるSD-WANプラクティスGoBGP活用によるSD-WANプラクティス
GoBGP活用によるSD-WANプラクティス
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
PostgreSQL v9.5の新機能~CustomScan/Join Interface
PostgreSQL v9.5の新機能~CustomScan/Join InterfacePostgreSQL v9.5の新機能~CustomScan/Join Interface
PostgreSQL v9.5の新機能~CustomScan/Join Interface
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
 

GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化

Editor's Notes

  1. 外部からアクセス可能な必要があるので、ポートフォワーディングが必要ですが、その場合並列で扱えないので、フラットなネットワークが必要