Submit Search
Upload
LXD 採用から運用までの顛末記
•
Download as PPTX, PDF
•
17 likes
•
7,207 views
D
digirock
Follow
コンテナ勉強会20170617 GMOデジロック株式会社
Read less
Read more
Technology
Report
Share
Report
Share
1 of 39
Download now
Recommended
入門!Jenkins
入門!Jenkins
Shuntaro Saiba
ファイルシステム比較
ファイルシステム比較
NaoyaFukuda
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
目grep入門 +解説
目grep入門 +解説
murachue
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
Recommended
入門!Jenkins
入門!Jenkins
Shuntaro Saiba
ファイルシステム比較
ファイルシステム比較
NaoyaFukuda
Linux女子部 systemd徹底入門
Linux女子部 systemd徹底入門
Etsuji Nakai
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
目grep入門 +解説
目grep入門 +解説
murachue
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
VirtualTech Japan Inc.
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
さくらインターネット株式会社
ホワイトボックス・スイッチの期待と現実
ホワイトボックス・スイッチの期待と現実
IIJ
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
Yuta Imai
AbemaTVの動画配信を支えるサーバーサイドシステム
AbemaTVの動画配信を支えるサーバーサイドシステム
yuichiro nakazawa
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
Miki Shimogai
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA
ファントム異常を排除する高速なトランザクション処理向けインデックス
ファントム異常を排除する高速なトランザクション処理向けインデックス
Sho Nakazono
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
Takashi Kajinami
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
Takuya ASADA
これからLDAPを始めるなら 「389-ds」を使ってみよう
これからLDAPを始めるなら 「389-ds」を使ってみよう
Nobuyuki Sasaki
「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
Hirotaka Sato
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?
Insight Technology, Inc.
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
Norishige Fukushima
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
whywaita
YugabyteDBの実行計画を眺める(NewSQL/分散SQLデータベースよろず勉強会 #3 発表資料)
YugabyteDBの実行計画を眺める(NewSQL/分散SQLデータベースよろず勉強会 #3 発表資料)
NTT DATA Technology & Innovation
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
Nobuhiro Fujita
QoS for ROS 2 Dashing/Eloquent
QoS for ROS 2 Dashing/Eloquent
Hideki Takase
More Related Content
What's hot
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
VirtualTech Japan Inc.
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
さくらインターネット株式会社
ホワイトボックス・スイッチの期待と現実
ホワイトボックス・スイッチの期待と現実
IIJ
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
Preferred Networks
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
Yuta Imai
AbemaTVの動画配信を支えるサーバーサイドシステム
AbemaTVの動画配信を支えるサーバーサイドシステム
yuichiro nakazawa
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
Miki Shimogai
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA
ファントム異常を排除する高速なトランザクション処理向けインデックス
ファントム異常を排除する高速なトランザクション処理向けインデックス
Sho Nakazono
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
Takashi Kajinami
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
Takuya ASADA
これからLDAPを始めるなら 「389-ds」を使ってみよう
これからLDAPを始めるなら 「389-ds」を使ってみよう
Nobuyuki Sasaki
「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
Hirotaka Sato
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?
Insight Technology, Inc.
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
Norishige Fukushima
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
whywaita
YugabyteDBの実行計画を眺める(NewSQL/分散SQLデータベースよろず勉強会 #3 発表資料)
YugabyteDBの実行計画を眺める(NewSQL/分散SQLデータベースよろず勉強会 #3 発表資料)
NTT DATA Technology & Innovation
What's hot
(20)
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
eBPFを用いたトレーシングについて
eBPFを用いたトレーシングについて
ホワイトボックス・スイッチの期待と現実
ホワイトボックス・スイッチの期待と現実
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
AbemaTVの動画配信を支えるサーバーサイドシステム
AbemaTVの動画配信を支えるサーバーサイドシステム
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
ファントム異常を排除する高速なトランザクション処理向けインデックス
ファントム異常を排除する高速なトランザクション処理向けインデックス
最近のOpenStackを振り返ってみよう
最近のOpenStackを振り返ってみよう
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
マルチコアとネットワークスタックの高速化技法
マルチコアとネットワークスタックの高速化技法
これからLDAPを始めるなら 「389-ds」を使ってみよう
これからLDAPを始めるなら 「389-ds」を使ってみよう
「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
テストコードの DRY と DAMP
テストコードの DRY と DAMP
グラフデータベースは如何に自然言語を理解するか?
グラフデータベースは如何に自然言語を理解するか?
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
CyberAgentのプライベートクラウド Cycloudの運用及びモニタリングについて #CODT2020 / Administration and M...
YugabyteDBの実行計画を眺める(NewSQL/分散SQLデータベースよろず勉強会 #3 発表資料)
YugabyteDBの実行計画を眺める(NewSQL/分散SQLデータベースよろず勉強会 #3 発表資料)
Similar to LXD 採用から運用までの顛末記
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
Nobuhiro Fujita
QoS for ROS 2 Dashing/Eloquent
QoS for ROS 2 Dashing/Eloquent
Hideki Takase
【JAWS DAYS 2013】ランサーズを支えるAWS
【JAWS DAYS 2013】ランサーズを支えるAWS
Kei Kinoshita
商用VPSのここだけの話
商用VPSのここだけの話
joeswebhosting
ロボットサービス開発の現場から
ロボットサービス開発の現場から
Kohei Kojima
【JAWS DAYS 2014】ランサーズを支えるRDS
【JAWS DAYS 2014】ランサーズを支えるRDS
Yuki Kanazawa
Internetトラフィックエンジニアリングの現実
Internetトラフィックエンジニアリングの現実
J-Stream Inc.
Node.js×mongo dbで3年間サービス運用してみた話
Node.js×mongo dbで3年間サービス運用してみた話
leverages_event
GAE + Spannerで目指せ No (Uncomfortable) Ops
GAE + Spannerで目指せ No (Uncomfortable) Ops
Miniascape
SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望 〜パネルディスカッション〜
SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望 〜パネルディスカッション〜
SORACOM,INC
【JAWS UG 山形】ランサーズでのAWS活用事例
【JAWS UG 山形】ランサーズでのAWS活用事例
Yuki Kanazawa
Similar to LXD 採用から運用までの顛末記
(11)
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
コンテナ基盤であるLXC/LXDを 本番環境で運用する話
QoS for ROS 2 Dashing/Eloquent
QoS for ROS 2 Dashing/Eloquent
【JAWS DAYS 2013】ランサーズを支えるAWS
【JAWS DAYS 2013】ランサーズを支えるAWS
商用VPSのここだけの話
商用VPSのここだけの話
ロボットサービス開発の現場から
ロボットサービス開発の現場から
【JAWS DAYS 2014】ランサーズを支えるRDS
【JAWS DAYS 2014】ランサーズを支えるRDS
Internetトラフィックエンジニアリングの現実
Internetトラフィックエンジニアリングの現実
Node.js×mongo dbで3年間サービス運用してみた話
Node.js×mongo dbで3年間サービス運用してみた話
GAE + Spannerで目指せ No (Uncomfortable) Ops
GAE + Spannerで目指せ No (Uncomfortable) Ops
SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望 〜パネルディスカッション〜
SORACOM LoRaWAN Conference 2017 | LoRaWAN活用の展望 〜パネルディスカッション〜
【JAWS UG 山形】ランサーズでのAWS活用事例
【JAWS UG 山形】ランサーズでのAWS活用事例
LXD 採用から運用までの顛末記
1.
GMOデジロック株式会社 2017年6月17日 @大阪 左川善章 LXD 採用から運用までの 顛末記
2.
目次 1. 自己紹介 2. LXD
採用まで編 3. LXD 構築から運用まで編 4. LXD 運用編 5. 総括
3.
自己紹介 名前:左川善章 職業:GMOデジロック株式会社 技術部(サーバー保守・運用担当) 性格:真面目、誠実(笑) 特徴:ボケもツッコミも下手な関西人
4.
ドメインサービス 紹介 低価格、自由度・柔軟性を重視したサービス 契約数 140万件以上 ユーザー数21万人
5.
ホスティングサービス 紹介 低価格、自由度・柔軟性を重視したサービス ↑コンテナ採用 ↑リニューアル予定 続々コンテナ採用予定!
6.
~ LXD 採用まで編~
7.
色々お話させて頂きますが、 LXD採用で、 XREA、 ハイパフォーマンスで 安定稼動しております!! コンテナ関係者の皆様に感謝!
8.
XREA 仮想化前史~完全仮想化へ 1. その昔、創業当初からのものを含む、古い物理サーバー を使っていた。ハード、ソフトとも老朽化しすぎ。。。 2.
2011年、マイグレーションに際して、KVM 完全仮想化を 採用して刷新。 3. 400 台弱のサーバーが、2ラックに収まった。
9.
完全仮想化の利点と問題点~運用してみて 1. セキュリティリスクや負荷のコントロールがVM内で完結 1. HDDディスクイメージの容量不足・増設でストレージの無駄が顕在化 2.
CPU、メモリ、ディスク等でパフォーマンス不足、無駄の多さが目立つ……。 3. そして準仮想化へ。 メリット デメリット
10.
よし、時代はコンテナだ! このままでは、お客様の満足度が下がる!
11.
なぜコンテナか? 1. 年月が経ち、サーバー毎にアクティブ数がまちまちである 2. 最小限のコストで最大限のパフォーマンス 3.
保守・運用が楽、安定している 4. 弊社の規模・要件にマッチしている
12.
なぜLXDか? ・Docker ⇒ Dockerでレンタルサーバーでやってやろう!と試行錯誤するも、ユーザーの権限独立 とネットワーク周りの問題が解決できず、本要件には不向きと判断 ・KVM ⇒
前述の通り、オーバーヘッドが多くてリソースが無駄 ・OpenVZ ⇒ コンテナより遅かった ・Vmware ⇒ 考えたこともない ・LXD ⇒コンテナだし、リソースが有効に使えて、ヒャッハーだ! (開発・構築担当者 原文ママ)
13.
LXD採用からサービス開始まで① • コンテナの採用決定から本番まで半年しかなかった • 2016年夏
構築・運営ノウハウ、全てゼロからのスタート!
14.
LXD採用からサービス開始まで② • 2017年2月 運用スタート! •
2017年5月 全台リニューアル完了! • 2017年6月 安定稼働! コンテナの障害なし! まだまだ日々試行錯誤中・・・
15.
LXDの運用対象 • アカウント数:30万ぐらい • データ量:50TBぐらい •
ファイル数:8億ぐらい • 帯域:1Gbpsぐらい
16.
LXDの運用環境 • D社サーバー • オールフラッシュ
RAID10 • 1ラックに収まるぐらいの台数^^;
17.
LXDの運用環境 • ホストOS:Ubuntu 16.04
LTS CentOS7なども検証。やっぱり、 Ubuntu。 • ゲストOS:CentOS7 共有サーバー要件で最適 保守・運用上、実績があり、使い慣れたもの(時間の節約)
18.
LXDの運用環境 • 最新版LXD 2.0.9 •
ZFS + ブロックデバイス • ホスト、ゲストのファイルシステム:ext4
19.
なぜZFSか? • 公式がおすすめしているw • ベンチマークが最速(個人的見解) •
成熟している(運用実績はないが…)
20.
ベンチマーク ホスト Seq-Read: bw=5535.2MB/s, iops=5535 Seq-Write:
bw=3002.1MB/s, iops=3002 Rand-Read-512K: bw=5224.6MB/s, iops=10448, Rand-Write-512K: bw=2994.2MB/s, iops=5988 Rand-Read-4K: bw=890889KB/s, iops=222722 Rand-Write-4K: bw=249720KB/s, iops=62430 Rand-Read-4K-QD32: bw=911013KB/s, iops=227753 Rand-Write-4K-QD32: bw=255501KB/s, iops=63875 • fioでの計測 • 5~15%のオーバヘッドは あるものの、概ね良好! コンテナ Seq-Read: bw=4718.1MB/s, iops=4718 Seq-Write: bw=2790.2MB/s, iops=2790 Rand-Read-512K: bw=4376.7MB/s, iops=8752 Rand-Write-512K: bw=2730.7MB/s, iops=5461 Rand-Read-4K: bw=882640KB/s, iops=220659 Rand-Write-4K: bw=229749KB/s, iops=57437 Rand-Read-4K-QD32: bw=874542KB/s, iops=218635 Rand-Write-4K-QD32: bw=248301KB/s, iops=62075
21.
~ LXD 構築から運用まで編~
22.
ホストシステム構築時のトラブル • オープンファイル数の上限 fs.inotify.max_user_instances •
PID、スレッド数の上限 kernel.threads-max kernel.pid_max • 共有メモリー系の上限 vm.max_map_count kernel.msg*
23.
オープンファイル数の上限編 コンテナばんばん作成するぜー!(開発・構築担当者談) Error: Too many
open files Job for network.service canceled. あれ? ⇒コンテナの作成台数が20台を越えた辺りからネットワーク周りが不安定になる ⇒ファイル数、プロセス周りの制限が掛かって上手くいかないのか? こんな事やりました↓
24.
オープンファイル数の上限編 echo 1000000 >
/proc/sys/fs/file-max vi /etc/sysctl.conf fs.file-max=1000000 vi /etc/security/limits.conf * soft nofile 1000000 * hard nofile 1000000 ulimit -n 1000000 あれ?直んない ↓ なんで ↓ なんで ↓ なんで ↓ こっちかい ↓
25.
オープンファイル数の上限編 echo "fs.inotify.max_user_instances = 819200"
| tee -a /etc/sysctl.conf && sudo sysctl –p そっちかい!
26.
その他上限解除編 fs.aio-max-nr fs.inotify.max_user_instances kernel.msgmax kernel.msgmnb kernel.msgmni kernel.pid_max kernel.sem kernel.shmall kernel.shmmax kernel.shmmni kernel.threads-max net.core.rmem_max net.core.somaxconn net.core.wmem_max net.ipv4.ip_conntrack_max net.ipv4.tcp_fin_timeout net.ipv4.tcp_max_orphans net.ipv4.tcp_rmem net.ipv4.tcp_sack net.ipv4.tcp_syncookies net.ipv4.tcp_timestamps net.ipv4.tcp_window_scaling net.ipv4.tcp_wmem net.nf_conntrack_max vm.dirty_background_ratio vm.dirty_expire_centisecs vm.dirty_ratio vm.dirty_writeback_centisecs vm.max_map_count
27.
~ LXD 運用編~
28.
運用時の苦労① ゲゲッ ユーザークォータできないん ですけど… ⇒色々調査したものの解決策が見つからず ⇒運用でカバー!
29.
運用時の苦労② マイグレ前半は特にLXDに関連する大きなトラブルは無し!! だが後半、マイグレ作業中に、Apacheのアラートがバンバンなり始める! 「なんだなんだ!?」 容赦なくアラートはバンバン増えていく、薄れゆく意識(夜間作業)、 増大する恐怖・・・ 「ここまで来て、まさかの、切り戻しか・・」 作業時間午前4時… 原因判明 ↓
30.
運用時の苦労② 原因は Apache RLimitNPROC + Potential DoS
attacks https://linuxcontainers.org/lxc/security/ ⇒要は、各コンテナでプロセス起動数制限をかける際、制限対象のUIDが共通 であるプロセス数を、全コンテナで見てしまっていた
31.
運用時の苦労③ ホストのロードアベレージが急激に上昇、 ホストからは問題のあるユーザーは特定できない・・ ⇒ZFSがボトルネック チューニングを実施 zfs_arc_meta_adjust_restarts zfs_arc_meta_prune 収まったものの、まだまだ未知の問題がでる可能性があり 日々試行錯誤、格闘しています。
32.
運用時の苦労④ コンテナ自体のリソース制御は、この辺をチュー ニングしています。 (自動化テスト中…) limits.cpu: limits.memory: limits.memory.enforce:
33.
運用時の苦労⑤ ホスト側からコンテナ内のユーザーを制御するた め、コンテナ内のUIDを取得し、制御する仕組み をテスト中…
34.
~ 総括~
35.
LXDはヒャッハーなのか?
36.
LXDに変えてどうだったか ・2ラック⇒1ラックにできた ・運用でカバーしている部分もあるが、保守・運用負荷は減った ・集約率を上げたにも関わらず、以前よりも快適にご利用頂いている ・CPU/ストレージ/メモリー領域を有効に使える ⇒高速なCPUやSSD、大容量のメモリーを採用でき、安価でご利用頂ける ⇒結果として、競争力のあるサービスになった! ⇒おかげさまで、ユーザー数は増加中!
37.
結局のところ……
38.
ヒャッハーだ!
39.
お客様の満足度が上がりました! LXD最高!! OSS/コンテナ開発関係者の 皆様に感謝! ご清聴ありがとうございました。
Download now