Upload
virtualtech-japan-inc
View
8.748
Download
7
Embed Size (px)
Citation preview
Ameba の OpenStack
株式会社サイバーエージェント
澤田石 朋彦
自己紹介
• 澤田石 朋彦(さわだいし ともひこ)• ネットワークエンジニア( L2 ~ L7 )
• ルータ、スイッチ、 Load Balancer• オプスタ歴:9ヶ月
会社紹介
会社紹介
アジェンダ
• 背景
• アーキテクチャ
• 運用はじめました
• 今後のチャレンジ
アジェンダ
• 背景
• アーキテクチャ
• 運用はじめました
• 今後のチャレンジ
そもそも OpenStack って?
OpenStack とは
• Cloud OS(IaaS 基盤 ) のひとつ• CloudStack• Eucariptus
• Linux のように Distribution が存在• RDO(RedHat)• Mirantis OpenStack(Mirantis)• FusionSphere(HUAWEI)
IaaS とは• DC にある Compute 、 Storage 、 Network などのリ
ソースを抽象化しサービスとして提供
http://www.openstack.org/software/
Server
nova
Router/SW
neutron
storage
swiftモジュール
ハードウェア
主要コンポーネント
オプションコンポーネント
まだまだあります!!
Ameba で採用したコンポーネント
OpenStack 導入までの流れ
2015 年 3 月
• OpenStack で行くぞ!(この時まだ未検証)• OpenStack 経験者 1 人
2015 年 4 月
• サーバ3台で検証開始• トライ&エラーで仕様決め
2015 年 10月
• OpenStack Kilo オープン!!• 今ココ
新 DC の要件
• 既存 DC を集約
• サービス毎のテナント
• 自社サービス用のインフラ
• 150Rack 規模、数万コア規模
OpenStack 導入より前
• コントローラーを自社開発
• Clover(200Rack 、 2 万 MAC 程度 )
課題
• 運用者=開発者• 規模拡大や仕様変更に追いつけない
• 独自 API (学習コスト大)
OpenStack 採用理由
• 小規模な OpenStack は運用していた
• OpenStack コミュニティが活発
• 標準的な API(AWS 互換 )• ユーザ完結によるスピード UP
アジェンダ
• 背景
• アーキテクチャ
• 運用はじめました
• 今後のチャレンジ
http://docs.openstack.org/openstack-ops/content/figures/2/figures/osog_0001.png
全体構成
Horizon
AMQP DB
DesignateKeystone各種 API
リソース 管理系
管理系名称 仮想 or 物理 台数 冗長
Controller 仮想 3 H/WLB の VIPAMQP(RabbitMQ) 仮想 3 RabbitMQ
ClusterNeutron-dhcp-agent(dnsmasq)
物理 2 Active-Active
DB(MySQL) 物理 2 MHA+Backup
• OpenStack そのものを管理(別 NW に設置)• “ 仮想”は KVM のゲスト
Compute Node名称 スペック
OS CentOS7(Kernel3.10)CPU 40CoreMemory 256GBDisk 2TB (RAID10)NET 10GBase-T * 2 ( LACP, mode=4)VMM KVMOvercommit 200%
• 高密度化 (Rack 46U )• 2U4Node• 12 chassis/rack 約 3000 core/rack• 定格 15K VA
Network
“ To improve performance and reliability, provider networks move layer-3 operations to the physical
network infrastructure.”(Networking manual)
L3 は Neutron に頼らない事を決意
Network
http://docs.openstack.org/networking-guide/scenario_l3ha_lb.html
Compute Node
Network Node懸念点• 拡張性• 冗長性• パフォーマンス
Network
http://docs.openstack.org/networking-guide/scenario_l3ha_lb.html
Compute Node
H/W Router
H/W LB
Network
http://docs.openstack.org/networking-guide/scenario_provider_lb.html
Network• 全ラックスイッチに必要 VLAN を設定• trunk Port 、約 1200 VLAN を全ポートに設定
• Neutron の外側で実施• NAT• FW ( Global からのトラフィック)
• Load Balancer• NW 自体はシンプル
Load Balancer• ハードウェア LB を採用
• OpenStack 連携なし
• LB の機能• SSL 終端
• プール毎の細かなパラメータ
• L3DSR ( VM-VS 間で GRE)• VIP を動的に広報( Internal に BGP )
Storage• Block Storage• HA LVM ( 360TB Mirroring)
• Object Storage• swift(400~600TB 、 3Replica)
• Image Backend• Ceph(3 Server * 12Disk * 3TB / 3Replica)
アジェンダ
• 背景
• アーキテクチャ
• 運用はじめました
• 今後のチャレンジ
連携必須
OpenStack
Serverエンジニア
Networkエンジニア
Storageエンジニア
各自の守備範囲は広い
Neutron-dhcp-agent の例UDP:67 で Listen してるはず!!
Listen してない?
Neutron-dhcp-agent の例
Y.Y.Y.Y:67
Z.Z.Z.Z:67
X.X.X.X:67
bond0.YYtapYYns-YY brq
YY
bond0.ZZtapZZns-ZZ brq
ZZ
bond0.XXtapXXns-XX brq
XX
veth veth
NameSpace 内
VMVLAN XX
VMVLAN XY
dhcp-discovery
サーバ内
dhcp-discovery
Neutron-dhcp-agent の例Namespace
を指定すると表示される
運用体制
• OpenStack 専任2人
• NW (兼任): 4 人 (< DC 数 )• Storage (兼任): 2 人
• NOC (兼任): 2 人+ α
監視
• Zabbix+各サーバにエージェント• IP と Port は全コンポーネント監視• 各コンポーネントごとに工夫• Namespace 数と bridge 数の比較( dnsmasq )• curl で 200 チェック (metadata-proxy)• インスタンスが作成できるか( nova&Ironic)
今の課題
• 正常時のフローの把握
• ログ管理&活用
• 監視
アジェンダ
• 背景
• アーキテクチャ
• 運用はじめました
• 今後のチャレンジ
次のチャレンジ
• コンテナ
• SR-IOV+DPDK• VxLAN• 複数 OpenStack の連携
これから OpenStack を始める方へ
• コード読める人必要
• その製品、本当に OpenStack対応ですか?
• 挙動が怪しい場合プロセス再起動が有効!!
• マニュアルが正しいとは限らない
資格が誕生
https://opcel.org/
仲間募集中!!