Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ハードウェアから攻めるクラウド / Cloud attack from hardware
Search
Takumi Takahashi
March 22, 2019
Technology
1
260
ハードウェアから攻めるクラウド / Cloud attack from hardware
Hosting Casual Talks #5 @さくらインターネット福岡オフィス
Takumi Takahashi
March 22, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
開発フェーズだけではない AI導入はどのように進めていくべきか / How should we proceed with AI adoption beyond the development stage?
i35_267
2
110
OpenTelemetry Collector internals
ymotongpoo
4
430
Monorepo Error Management: Automated Runbooks and Team-Targeted Alert Distribution
biwashi
1
130
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/03 - 2025/05
oracle4engineer
PRO
1
140
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
270
単一Gitリポジトリから独立しました
lycorptech_jp
PRO
0
380
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
17k
Text-to-SQLの評価データセットを作って最新LLMモデルの性能評価をしてみた
gotalab555
3
680
libsyncrpcってなに?
uhyo
0
260
Data Hubグループ 紹介資料
sansan33
PRO
0
1.8k
開発効率と信頼性を両立する Ubieのプラットフォームエンジニアリング
teru0x1
0
110
Java で学ぶ 代数的データ型
ysknsid25
3
1.2k
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
A designer walks into a library…
pauljervisheath
205
24k
Designing for humans not robots
tammielis
253
25k
Scaling GitHub
holman
459
140k
Transcript
ハードウェアから 攻めるクラウド Takumi Takahashi 2019/03/22
Takumi Takahashi @takumin @takumiiinn 2
本日のレシピ 1. ベアメタルで考慮すべき所 2. ソフトウェアによる再現 3. デモンストレーション 4. さいごに 3
1. ベアメタルで考慮すべき所
ハードウェアの多様性 カーネルの多様性 ディストリビューションの多様性 ネットワークの多様性 テスト手法 その他たくさん 5
ハードウェアの多様性 カーネルの多様性 ディストリビューションの多様性 ネットワークの多様性 テスト手法 その他たくさん 6
CPU x86 ARM RISC-V etc... 7
Firmware BIOS UEFI Proprietery etc... 8
ハードウェアの多様性 カーネルの多様性 ディストリビューションの多様性 ネットワークの多様性 テスト手法 その他たくさん 9
NT Darwin Linux kernel RTOS 自作OS etc... 10
ハードウェアの多様性 カーネルの多様性 ディストリビューションの多様性 ネットワークの多様性 テスト手法 その他たくさん 11
Debian Family Ubuntu etc... Redhat Family CentOS etc.. Gentoo Linux
etc... 12
ハードウェアの多様性 カーネルの多様性 ディストリビューションの多様性 ネットワークの多様性 テスト手法 その他たくさん 13
物理NW Ethernet In niBand EtherCAT etc... 仮想NW Linux Network Namespace
VLAN VXLAN etc... 14
ハードウェアの多様性 カーネルの多様性 ディストリビューションの多様性 ネットワークの多様性 テスト手法 その他たくさん 15
テスト環境 仮想マシン コンテナ 16
テストアプリケーション テストフレームワーク CIツール 17
ハードウェアの多様性 カーネルの多様性 ディストリビューションの多様性 ネットワークの多様性 テスト手法 その他たくさん 18
どのような場所に設置するか? 電源をどうするか? 空調をどうするか? 故障検知/対応をどのように行うか? 19
結論 全部一人でやるのは無理ゲー 既存ベンダの凄さを再認識
無理ゲーにしないためには? ハードウェアはどうにもならない部分が多い… 21
それならソフトウェアで再現しよう! 22
2. ソフトウェアによる再現
24
今回はVagrant+Libvirtでトライしてみました 25
Vagrant leの仕組みは仮想環境の再現性高い Web界隈では仮想環境のデファクト? 仮想N/W構築など期待値は高い 26
QEMU+KVMを採用 抽象度が非常に高いがバックエンドの知識も必要 27
Vagrant管理外で仮想ネットワークを独自に構築 EDK2/OVMF UEFIで初期ネットワーク起動 UEFIからチェーン処理されるiPXE BIOS/UEFI両対応+その他便利機能 API(メタデータ)サーバ 諸々のシステムを糊付けします 28
3. デモンストレーション やってみた!
4. さいごに こんなツールあるとうれしい
mruby + KVM + UEFI + netns = ??? Vagrantは仕組みが巨大なため動作に難がある
Linuxに限定すればKVM APIを直接触れる Firecracker(Jailer)をバックエンドにすれば...? GNS3のようなシステム構成可視化ツール 例えば上記ツールがGraphvizなどを出力 システム全体の検証ツールとして使えます 31
Thank you for your a en on!!