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
鮫鮫鮫#Techlunch
Search
Livesense Inc.
PRO
April 21, 2014
Technology
82
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
鮫鮫鮫#Techlunch
鮫! 鮫! 鮫!
2013/02/05 (水) 12:00-13:00 @ Livesense TechLunch
発表者:鈴木 翔一郎
Livesense Inc.
PRO
April 21, 2014
More Decks by Livesense Inc.
See All by Livesense Inc.
Rubyはただの⾔語に⾮ず
livesense
PRO
0
430
28新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
110
27新卒_総合職採用_会社説明資料
livesense
PRO
0
6k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
11k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
510
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
1
1.7k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
640
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
69k
Other Decks in Technology
See All in Technology
スタートアップにおけるアジャイルの実践について #shibuyagile
murabayashi
3
2.1k
DMM.com 購入改善推進チーム におけるCodeRabbitを用いた レビューフロー改善の一例
ysknsid25
1
520
AI時代のエンジニアキャリアについて今一度考える
sakamoto_582
2
1.3k
実装だけじゃない! CCA-F取得エンジニアが教えるClaude Code開発プロセス活用術
diggymo
2
430
証券システムを10年Scalaで作り続けるということ - 関数型まつり2026
krrrr38
3
740
次世代ランサムウェア対策の考察 / 20260704 Mitsutoshi Matsuo
shift_evolve
PRO
5
1.7k
そのタスクオンスケですか?
poropinai1966
0
140
AI Agent SaaS を支える自社仮想化基盤への挑戦と実運用 / ai-agent-saas-virtualization
flatt_security
2
2.9k
金融の未来を考える / Thinking About the Future of Finance
ks91
PRO
0
180
インフラ寄りSREでも 開発に踏み出せる〜境界を越えてユーザー体験に向き合いたい〜
sansantech
PRO
0
2.5k
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
8.1k
cccccc
moznion
0
1.8k
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
270
Writing Fast Ruby
sferik
630
63k
Raft: Consensus for Rubyists
vanstee
141
7.6k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
220
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
For a Future-Friendly Web
brad_frost
183
10k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
190
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Transcript
鮫! 鮫! 鮫! CTO室 鈴木 翔一朗
None
None
None
None
None
鮫! 鮫! 鮫! ネットワークはなぜつながるのか Deep Dive CTO室 鈴木 翔一朗
None
DHCP アドレス取得
DHCP Dynamic Host Configuration Protocol • PCへのIPアドレス割当 • PXE boot
: サーバセットアップ • Vitual Box VMの起動
None
DHCP 大事なんです いいんです DHCP!!!!!!
Broadcastを使用している事に注意
gateway, DNS等 割当可能なパラメタは多い
DHCPはルータ越え られないんです DNS割当できなきゃ yum updateこける んです いいんです DHCP!!!!!!
名前解決
DNS 割当 端末 DNS割当 クライアントPC DHCP Vitrula Box DHCP 推奨
DHCPを使っても、同じIPアドレスが 割り当てられる事が多いです。 Staticに設定するならば、Virtual Box内部の仮想ネットワークを正しく 理解し、gateway, DNS等の設定が 必要。Virtual Boxから外部ネット ワークへのNATでハマる事もあり。 サーバ機器 /etc/resolv.conf でstaticに定義
ルーティングテーブルに基づき パケットを送信
Longest match 法則 例 : 宛先 192.168.20.24 192.168.0.0/22 gw N/A
: 該当せず 192.168.0.0/16 gw 10.49.0.254 : 優先する 0.0.0.0/0 gw 180.214.38.254 : 優先しない Windows端末やネットワーク機器では、 metric, Adminitrative Distance等の概念あり
ARPテーブルに基づき next hopのMACアドレスをlook up
ARPテーブルにhitしない場合は、 ARP リクエストを送信
DNS query 送信
DNS タイムアウトはくせもの 多くのミドルウェアが名前解決に依存している DNS障害時は多くのミドルウェアが名前解決待ち の状態になり大規模障害を引き起こしやすい Timeoutを短めにする事で被害を軽減できるが、 それでもある程度の被害は避けられない
DNS timeout 設定例
怖いんです DNS 障害!!!!!!
HTTP connection 確立
3way handshakeによるコネクション確立
上位Layerでtimeoutが定義されていない場合 約30秒程の待ち時間が発生 待ち時間はretry毎にベキ函数的に上昇
Retry回数は容易に設定変更可能 sysctl : net.ipv4.tcp_syn_retries = 5 Timeout時間はハードコードされている ref ; include/net/tcp.h
CentOS 6.4くらいからTimeoutが3秒から1秒に 減ったので、総待ち時間が180秒から30秒に
gateway 冗長化 ISP業者 冗長化
ゲートウェイ冗長化 HSRP VRRP GLBP Cisco 独自 IEEE 標準 Cisco独自 Udp
1985 proto 122 udp 3222 一番実績豊富 IEEE 標準とは名ばかり 宛先MACアドレスやVRRP GROUP等について、独自 実装しているソフトウェ アが多いです。 ベンダー混在は極力避け る事が望ましいです。 負荷分散機能が実装 されたプロトコル。 他プロトコルに比べ 高機能だが、実績が 少なく使うには人柱 になる覚悟が必要。
Protocol number 全ての通信はTCP, UDPのみではありません。 TCP, UDPはProto 7, 19のIPです。 Proto 122のvrrpは以下のように指定します。
ISP 冗長化 方法 GLBP IGP/BGP ISP業者との事前取り決めが必要 調整工数が大きいですが、一度構築して しまえば安定して動く事が多いです 例 :
リブセンス – ビットアイル間 static route with tracking ある場所をping等で監視し、監視結果に 応じでstatic routeが変わります。 机上デバッグが非常に困難で、事前に入 念なテストをしないと、酷い障害につな がります。 例 : 管理本部
HSRP
実演中
IGP
Static Route ルータ2台程度までの小規模向け設定 ルータが増えると、設定工数が指数函数的に膨 れ上がる 障害発生時に自動的に切り替わらない IGP
(Interior Gateway Protocol) 経路情報を自動的に交換してくれる
Static routeが 許されるのは 小学生までだよねー
IGP 比較 プロトコル 説明 RIP レガシーなルーティングプロトコル “最大ホップ数15”等の様々な使いづらい制約がある OSPF 各ルータのリンク情報を収集し、ダイクストラ法に基づ いて最短経路を算出。
最も汎用的で最も実績豊富なプロトコル ISIS 各ルータのリンク情報を収集し、高速ダイクストラ法に 基づいて最短経路を算出。 OSI参照モデルに基づかず、非IPもルーティング可能 実績は皆無ですが、googleはISISを採用 EIGRP Cisco独自のプロトコル。OSPFに比べて、高速な切り替 わりが実装されている等のメリットがあるが、 Ciscoにベンダーロックされてしまうのが難点。
デフォルトは30秒程度で切り替わります Hello timerを短くする事で切替を早められます が、flappingに弱くなるデメリットがあります
OSPF
BGP
BGP AS (Autonomous System)間のルーティング Flapping対策のため、切り替わりは緩やか 様々な属性情報を付与して経路を送付
どの属性を優先させるのかはASのポリシー次第 local pfre > AS PATH > MED
BGP
実演中
DSR 負荷分散
負荷分散方式 方式 サーバ 負荷 学習 コスト DSR (L4LB) 小 大
宛先MACアドレス変換による負荷分散 戻りパケットはLBを経由しないよう設計 BIG-IP, keepalived NAT (L4LB) 中 中 IPアドレスを変換 戻りパケットがLBを経由するよう設計 ログ集計, 送信元制御など業務要件への配慮 BIG-IP, keepalived Proxy (L7LB) 大 小 代理アクセスによる負荷分散 ログ集計, 送信元制御など業務要件への配慮 Layer7制御が可能 BIG-IP, apache, nginx, HA-proxy, mysql-proxy DNS 小 小 名前解決による負荷分散 MyDNS
業務もインフラも 両方分からないと メンテできないんです ロードバランサー!!
None
仮想IPをListenする仕組み Loopback I/F (ARPに応答しないよう注意) NAT で問答無用でListenしてしまう
None
proxy 負荷分散
HTTP proxy
REMOTE ADDR書き換え livesense 独自拡張モジュール
apache 最低限の業務要件なら普通のmod_rpafでもok ubuntuはapt-getで一発インストール可 Nginx header 書き換え 駆使 HttpProxyModule 使用
どんなプロトコルも一長一短です。 特にLB関連は、業務要件に応じた構成を採用して 頂ければと思います。
おまけ GNS3 とっても便利なんです CTO室 鈴木 翔一朗
このネットワーク環境を5分で構築します もう3分頂ければIPv6も設定します
ルーティングのお仕事をすべて湖山さんがやるの は無理があるので、実機orエミュレータ検証がで きるレベルのエンジニアがもう一人いると助かり ます。 GNS3に興味を持って頂けましたでしょうか…