• 検索結果がありません。

OpenStack/Contrail integration on k8s

N/A
N/A
Protected

Academic year: 2021

シェア "OpenStack/Contrail integration on k8s"

Copied!
45
0
0

読み込み中.... (全文を見る)

全文

(1)

1 2016年12月7日 Yahoo! JAPAN {ytatsumi, tasogabe}@yahoo-corp.jp

Kubernetes を使って OpenStack

の運用管理を進化させよう!

KollaKubernetes のご紹介

(2)

-Agenda

• Yahoo! JAPAN ご紹介

• OpenStack運用の課題

• Docker(Kolla)で解決出来ること

• Kubernetesで解決できること

2

(3)

自己紹介 (1)

3

立見 祐介 (Yusuke Tatsumi)

Yahoo! JAPAN にて、production NW構築・ 運用に従事。最近はOpenStackプライベート クラウドの仮想ネットワークの検証・構築を 行なう。

(4)

自己紹介(2)

曽我部 崇 (Takashi Sogabe)

Yahoo! JAPAN にて、OpenStackプライベー トクラウドの運用・管理を効率化するための 技術開発に従事

得意技: AWS(OpsWorks, CodeDeploy etc.)

(5)

Yahoo! JAPAN ポータルサイト Overview

(6)

Yahoo! JAPAN ポータルサイト Overview

6

Monthly Page Views

69+ Billion

http://i.yimg.jp/i/docs/ir/archives/present/2016/jp160728presentation.pdf http://hr.yahoo.co.jp/infographics/

Monthly Page Views (Only Smartphone)

39+ Billion

Apps Total Download

380+ Million

Number of services

100+

(7)

0 5 10 15 20 25

1 year ago Half year ago Today

vCPU (x10k) Memory (x10TB) Block (x1PB) 急増するYahoo! JAPAN の ワークロード 急激な利用増加により、Networkを始め安定性の向上が課題となる ”density growth” in HV 7 • YoYでリソース2倍 • 利用増加 • クラスタ数の爆増

(8)

OpenStack 運用の課題 (1)

• Juju/MAAS, Triple-O, Fuel

• 初期インストールは簡単になった

• 運用は必ずしも楽にならない

• Security Fix • Update • OpenStack Clusterの成長 8

(9)

OpenStack 運用の課題 (2)

• OpenStack

• クラウドネイティブアプリを開発・運用 できるプラットフォーム • アプリ開発者は大幅に生産性が向上

• OpenStack自体の運用

• 旧来の力技運用(ペットのように扱う) • OpenStack Engineer の生産性は以前 と変わらず 9

(10)

OpenStack 運用の課題 (3)

• クラウドネイティブの世界

• CI/CDパイプライン

• ELKスタック等へのログ集約、サー ビスのメトリクスモニタリング

• Design for Failure etc.

(11)

11

(12)

OpenStack CI/CD パイプライン

• CI/CDパイプラインを回すことで、品

質の安定とクラスタの進化を加速

12

Commit Build Unit

Test Deploy System Test Deploy (Prod) Measure/ Validate Production Feedback Tempest Rally Tox

(13)

Yahoo! JAPAN の取り組み

• OpenStackのコントローラをKubernetes 上にデプロイする • https://techblog.yahoo.co.jp/infrastructure/os_on _k8s/ • OpenStack の Controller 部分を k8s 上 に載せるのは難しくない • ただし、プロダクションレベルでの運用や Compute / Network ノードを扱うには 様々な考慮が必要 13

(14)

Kolla

(15)

Kolla

• Docker を用いて OpenStack の

CI/CDプロセスを実現

• Mission Statement

• Kolla provides production-ready containers and deployment tools for operating OpenStack clouds.

(16)

Kolla メリット

• Deployが簡単

• Docker Container を用いて素早く Deploy

• 運用が簡単

• Ansible を用いたコンフィグ管理 16

(17)

Kolla Architecture

17 OpenStack Service Containers Infrastructure Engineering CI CD Ansible Registry Docker OS cgroups namespaces Host #n

(18)

Quick Start Guide (1)

• Vagrant + VirtualBox

• http://docs.openstack.org/develo per/kolla/vagrant-dev-env.html

(19)

Quick Start Guide (2)

19

$ git clone -b stable/newton

https://github.com/openstack/kolla kolla-newton

$ cd kolla-newton/dev/vagrant $ vi Vagrantfile.custom

(20)

Quick Start Guide (3)

20 PROVIDER="virtualbox" PROVIDER_DEFAULTS = { virtualbox: { centos: {

bridge_interface: "en0: Wi-Fi (AirPort)", base_image: "centos/7", sync_method: “virtualbox", kolla_path: "/home/vagrant/kolla" } } }

(21)

Quick Start Guide (4)

• Guest OS に CentOS(Default)を使う

場合は、次の patch を Vagrantfile

に当てる必要があります。

• masterでは修正済 21 $ cd /path/to/kolla-newton/dev/vagrant $ patch_id=dcb102608d05d20c58c7340f948c94dd4b6da971 $ git diff $patch_id^ $patch_id > 00patch.txt

(22)

Quick Start Guide (5)

• Vagrant および VirtualBox をイ

ンストールした後に、次のプラグ

インをインストール

22

$ vagrant plugin install vagrant-hostmanager vagrant-vbguest

(23)

Quick Start Guide (6)

• Image のビルド

23

$ kolla-build

• Image のデプロイ

(24)

Quick Start Guide (7)

• RDO の version 指定をするには?

• /etc/kolla/kolla-build.conf 内に rpm_setup_config を指定する 24 rpm_setup_config = http://trunk.rdoproject.org/centos7-mitaka/current/delorean.repo,http://trunk.rdoproject.org/c entos7-mitaka/delorean-deps.repo /etc/kolla/kolla-build.conf (mitaka 例)

(25)

Kolla Notes

• Ocata(次期リリース)以降、Kolla は

“Kolla” および “Kolla-Ansible” の2

つに分離される

• Kolla • Docker image のビルド • Kolla-Ansible

• Docker image のデプロイ (Ansible)

(26)

Kolla Design (1)

• Node type毎に deployされるサービスが異なる

• Controller • APIやDB等、OpenStack Controller • Network • neutron-agent • Compute • nova-compute • Storage

• cinder volume (LVM or ceph-osd)

(27)

Kolla Design (2)

• Docker の設定

• Networking

• net=host が用いられる

• Storage

• Storage Driver: defaultの devicemapper だ とI/O性能が出ないため、aufs または btrfs への変更が推奨されている

• Docker host 上の /var/lib/docker 以下に ボリュームが保存される

(28)

Kolla Design (3)

• Under Cloud の構築 • Bifrost • スタンドアロンで動作する Ironic • kolla-ansible コマンドにて deploy できる • http://docs.openstack.org/developer/koll a/bifrost.html • MAAS, Cobbler • Docker Host を構築するだけで良いため、 比較的簡単に作りこめるはず 28

(29)

Kolla が向いているケース

• OpenStack クラスタサイズが頻繁

に増加しないと見込まれる環境

• DockerでCI/CDを回したい • Ansible を用いたインベントリ管理 で十分 • 今すぐ使いたい 29

(30)

Kolla-Kubernetes

(Kolla-k8s)

(31)

Kolla-Kubernetes

• Kolla-Kubernetes (Kolla-k8s)

• Kolla Container を Kubernetes上 で動かす

(32)

Kubernetes が得意なこと

• Statelessなアプリの運用管理

• Front: Nginx、Backend: RDSや

DynamoDB 等のクラウドサービス 環境にフィットする

• Scale Up, Scale Down • Rolling Upgrade

(33)

Kubernetes が苦手なこと

• Stateful なアプリの運用管理

• MySQL や RabbitMQ のように、バック エンドストレージが必要であったりノー ドの追加・削除に別途ロジックが必要 なものは 実装に工夫が必要

• 特定ホスト上に固定して実行する必

要があるアプリ

33

(34)

OpenStack on k8s

• 苦手な Statefulアプリをうまく料

理できれば、Kubernetesの良さ

(Scalability, Manageability)を

OpenStackでも味わえる!

• MySQL • RabbitMQ 34

(35)

Kolla-Kubernetes の特徴

• Stateful component (MySQL,

RabbitMQ) を扱える

• nova-compute を扱える

• Workflow tool の形で提供される

• Ansible (~Newton) • Operators/Helm (Ocata~) 35

(36)

Quick Start Guide

• 2016/11現在、Quick Start(Vagrant

等) する方法はありません

• Ocataリリースに向けてアーキテク

チャの全面刷新を進めています

• 2016/11現在、動作するコードは

master上にありません

36

(37)

Kolla-k8s Design (Ocata)

http://bit.ly/2gx9J0Z • Kubernetes Operators • http://bit.ly/2eEVYs2 • Stateful ソフトウェア等、複雑なオペレーショ ンが必要なアプリを k8s 上で運用するため のロジックを実装 • Helm Package • http://bit.ly/2gx9KCf • k8s package manager 37

(38)

Kolla-k8s Design

• Under Cloud(k8s cluster) の構築

• Public Cloud(AWS, GCE)向けの Deployment Tool は充実している • kube-deploy • kops • Bare Metal でも使えそうなものは少ない • halcyon-kubernetes • Juju/MAAS 38

(39)

Kolla-k8s 課題 (1)

• Kubernetes cluster の安定運用 • cluster 自体の upgrade ができる? • High Availability 構成で運用できる? • 適切にclusterを構成しないと、新たな複雑さ を OpenStack にもたらすだけになる • 安定運用できれば、OpenStack をk8s上に載 せることで Scalability, Manageability のメリッ トが得られる

• OpenStack Controller のみ Public Cloud上に

デプロイするのは良い考えかもしれない

(40)

Kolla-k8s 課題 (2)

• Kolla-k8s には課題が沢山

• ご興味がある人は、是非contribute してください! • https://blueprints.launchpad.net/k olla-kubernetes 40

(41)

まとめ

• Kolla や Kolla-Kubernetes を使う

と得られるメリット

• OpenStack をクラウドネイティブア プリのように開発・運用できる • Kolla-kubernetes についてはOcata に向けて開発進行中 41

(42)

参考情報

(43)

OpenStack on Kubernetes (1)

• Fuel CCP

• https://github.com/openstack/fuel-ccp • Document • http://fuel-ccp.readthedocs.io/en/latest/ 43

(44)

OpenStack on Kubernetes (2)

• Stackanetes

• https://github.com/stackanetes/sta ckanetes

• Newtonにて、 tech review がリリース された

• http://bit.ly/2gASprT

• コンテナエンジン: rkt

(45)

OpenStack on Kubernetes (3)

• OpenStack-helm

• https://github.com/sapcc/openst ack-helm • Helm を用いて OpenStack を Deploy できる 45

参照

関連したドキュメント

 Charles Carlson, Karthekeyan Chandrasekaran, Hsien-Chih Chang, Naonori Kakimura, Alexandra Kolla, Spectral Aspects of Symmetric. Signings,

Jayamsakthi Shanmugam, Dr.M.Ponnavaikko “A Solution to Block Cross Site Scripting Vulnerabilities Based on Service Oriented Architecture”, in Proceedings of 6th IEEE

We give a new and self-contained proof of the existence and unicity of the flow for an arbitrary (not necessarily homogeneous) smooth vector field on a real supermanifold, and

In he following numerical examples, for simplicity of calculations he start-up time parameter is dropped in Model 1. In order to keep system idle ime minimal, the "system

As Llarull rigidity theorem (and the weighted rigidity theorem) still holds if the condition that h is 1-contracting is replaced by the condition that h is area-contracting,

Alternatives that curb student absenteeism in engineering colleges like counseling, infrastructure, making lecture more attractive, and so forth were collected from

Finally, some new families of finite CI-groups are found, that is, the metacyclic groups of order 4 p (with centre of order 2) and of order 8 p (with centre of order 4) are

Since, as the conventional DE formula, Ooura and Mori’s DE formula is based on the trapezoidal formula over ( −∞ , + ∞ ), i.e., a quadra- ture with the zeros of the sine function