CONFIDENTIAL Designator
OpenStack Octavia入門
Takashi Kajinami
Software Maintenance Engineer
Red Hat Tech Night #2
May 28, 2019
Red Hat
Open Infrastructure Summitで日本人コントリビュータ座談会を実施。今回のカンファレンスの見どころは?
https://thinkit.co.jp/article/16182
→マイナーだけど実は需要があるのでは?
なんでOctavia?
2
Red Hat
● LBaaS(Load Balancer as a Service)を実現するOpenStackのプロジェクト
○ https://github.com/openstack/octavia
○ Octavia is an operator-grade open source scalable load balancer for use in large OpenStack
deployments.
● OpenStackにもともとあったLBaaS機能の後継
○ Neutron/LBaaS: https://wiki.openstack.org/wiki/Neutron/LBaaS
● Pikeリリースにてv1.0をリリース
そもそもOctaviaって何?
3
https://wiki.openstack.org/wiki/Octavia
Red Hat
● 「VM上にhaproxyをいい感じに起動して、よしなに設定・管理する」機能
● 従来のNeutron/LBaaSはNetworkノード(or Controllerノード)にhaproxy等を起動し、
LB 機能を提供
● OctaviaはNovaインスタンスを利用してhaproxyを起動するので、負荷分散・スケー
ルアウトが容易に!
Octaviaは何をするの?
4
Controller Compute Compute Controller Compute Compute
LB
LB
Neutron LBaaS Octavia
LB
LB
VM
LB
VM
LB
VM
LB
VM
LB
Red Hat
● APIを使って設定を操作
→ 複雑な設定管理(Heat template, ansible …)は必要なし
●
https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html
Octaviaは何がいいの?(1/3)
5
$ openstack loadbalancer create --name lb1 --vip-subnet-id public-subnet
$ openstack loadbalancer listener create --name listener1 --protocol HTTP --protocol-port 80 lb1 --insert-headers "X-Forwarded-For"="True"
$ openstack loadbalancer pool create --name pool1 --lb-algorithm ROUND_ROBIN --listener listener1 --protocol HTTP
$ openstack loadbalancer member create --subnet-id private-subnet --address 192.0.2.10 --protocol-port 80 pool1
$ openstack loadbalancer member create --subnet-id private-subnet --address 192.0.2.11 --protocol-port 80 pool1
Red Hat
● VMを定期的にMonitorし、故障時にRebuildする自動Fail Over機能
→ 可用性の高いLoad Balancerを提供!
https://docs.openstack.org/octavia/latest/reference/introduction.html
Octaviaは何がいいの?(2/3)
6
Red Hat
● Ingress ControllerとしてOctaviaを利用できる
→ Kubernetes on OpenStackがより使いやすく!
https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/#openstack
Octaviaは何がいいの?(3/3)
7
annotations:
kubernetes.io/ingress.class: "openstack"
Red Hat
● Octaviaは結構便利
● RHOSP13でサポートしてます
● 使ってどんどんフィードバック
言いたかったこと
CONFIDENTIAL Designator
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHat
Thank you!

OpenStack Octavia入門

  • 1.
    CONFIDENTIAL Designator OpenStack Octavia入門 TakashiKajinami Software Maintenance Engineer Red Hat Tech Night #2 May 28, 2019
  • 2.
    Red Hat Open InfrastructureSummitで日本人コントリビュータ座談会を実施。今回のカンファレンスの見どころは? https://thinkit.co.jp/article/16182 →マイナーだけど実は需要があるのでは? なんでOctavia? 2
  • 3.
    Red Hat ● LBaaS(LoadBalancer as a Service)を実現するOpenStackのプロジェクト ○ https://github.com/openstack/octavia ○ Octavia is an operator-grade open source scalable load balancer for use in large OpenStack deployments. ● OpenStackにもともとあったLBaaS機能の後継 ○ Neutron/LBaaS: https://wiki.openstack.org/wiki/Neutron/LBaaS ● Pikeリリースにてv1.0をリリース そもそもOctaviaって何? 3 https://wiki.openstack.org/wiki/Octavia
  • 4.
    Red Hat ● 「VM上にhaproxyをいい感じに起動して、よしなに設定・管理する」機能 ●従来のNeutron/LBaaSはNetworkノード(or Controllerノード)にhaproxy等を起動し、 LB 機能を提供 ● OctaviaはNovaインスタンスを利用してhaproxyを起動するので、負荷分散・スケー ルアウトが容易に! Octaviaは何をするの? 4 Controller Compute Compute Controller Compute Compute LB LB Neutron LBaaS Octavia LB LB VM LB VM LB VM LB VM LB
  • 5.
    Red Hat ● APIを使って設定を操作 →複雑な設定管理(Heat template, ansible …)は必要なし ● https://docs.openstack.org/octavia/latest/user/guides/basic-cookbook.html Octaviaは何がいいの?(1/3) 5 $ openstack loadbalancer create --name lb1 --vip-subnet-id public-subnet $ openstack loadbalancer listener create --name listener1 --protocol HTTP --protocol-port 80 lb1 --insert-headers "X-Forwarded-For"="True" $ openstack loadbalancer pool create --name pool1 --lb-algorithm ROUND_ROBIN --listener listener1 --protocol HTTP $ openstack loadbalancer member create --subnet-id private-subnet --address 192.0.2.10 --protocol-port 80 pool1 $ openstack loadbalancer member create --subnet-id private-subnet --address 192.0.2.11 --protocol-port 80 pool1
  • 6.
    Red Hat ● VMを定期的にMonitorし、故障時にRebuildする自動FailOver機能 → 可用性の高いLoad Balancerを提供! https://docs.openstack.org/octavia/latest/reference/introduction.html Octaviaは何がいいの?(2/3) 6
  • 7.
    Red Hat ● IngressControllerとしてOctaviaを利用できる → Kubernetes on OpenStackがより使いやすく! https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/#openstack Octaviaは何がいいの?(3/3) 7 annotations: kubernetes.io/ingress.class: "openstack"
  • 8.
    Red Hat ● Octaviaは結構便利 ●RHOSP13でサポートしてます ● 使ってどんどんフィードバック 言いたかったこと
  • 9.