"openstack & oracle — взболтать, но не смешивать"....

Post on 16-Jun-2015

851 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Все enterprise-решения имеют свою специфику и отличаются весьма щепетильным подходом к эксплуатации. Но иногда возникает необходимость тиражировать их с минимальными усилиями. Нам в Яндексе понадобилось создать множество тестовых сред с продуктами Oracle. Для облегчения этой задачи мы виртуализовали их в приватном облаке OpenStack. В докладе пойдёт речь об этом опыте: с какими проблемами пришлось столкнуться и как мы будем использовать в дальнейшем полученные знания.

TRANSCRIPT

OpenStack & Oracle — взболтать, но не смешивать

Филимонцев Сергей

О чём мой доклад

Финансовые сервисы и Oracle

Что такое OpenStack

Как приготовить в нём Oracle

3

Финансовые сервисы и Oracle

Зачем нам понадобился OpenStack

OEBS

5

OEBS

OEBS — ERP-система

5

OEBS

OEBS — ERP-система

OEBS активно растёт — за 3 года:

5

OEBS

OEBS — ERP-система

OEBS активно растёт — за 3 года:

– Данные × 5 = 1,5 TB

5

OEBS

OEBS — ERP-система

OEBS активно растёт — за 3 года:

– Данные × 5 = 1,5 TB– Пользователи × 50 = 1500

5

OEBS

OEBS — ERP-система

OEBS активно растёт — за 3 года:

– Данные × 5 = 1,5 TB– Пользователи × 50 = 1500

Активная разработка — активное тестирование

5

Тестовые среды

6

Тестовые среды

6

Разработка

Тестовые среды

6

Разработка

Тестирование

Тестовые среды

6

Разработка

Тестирование

– функциональное

Тестовые среды

6

Разработка

Тестирование

– функциональное– миграционное

Тестовые среды

6

Разработка

Тестирование

– функциональное– миграционное– пользовательское

Тестовые среды

6

Разработка

Тестирование

– функциональное– миграционное– пользовательское

Документирование

Тестовые среды

6

Разработка

Тестирование

– функциональное– миграционное– пользовательское

Документирование

Обучение

Конфигурация тестовой среды

7

6 серверов: 2 × Xeon 5530; 48GB RAM

2 дисковые полки: 24 × 2TB SATA

Конфигурация тестовой среды

7

6 серверов: 2 × Xeon 5530; 48GB RAM

2 дисковые полки: 24 × 2TB SATA

Конфигурация тестовой среды

7

iSCSI-target iSCSI-target

6 серверов: 2 × Xeon 5530; 48GB RAM

2 дисковые полки: 24 × 2TB SATA

Конфигурация тестовой среды

7

Oracle ASM iSCSI-target iSCSI-target

6 серверов: 2 × Xeon 5530; 48GB RAM

2 дисковые полки: 24 × 2TB SATA

Конфигурация тестовой среды

7

Oracle DB EE Oracle DB EE

Oracle ASM iSCSI-target iSCSI-target

6 серверов: 2 × Xeon 5530; 48GB RAM

2 дисковые полки: 24 × 2TB SATA

Конфигурация тестовой среды

7

Oracle RAC Oracle DB EE Oracle DB EE

Oracle ASM iSCSI-target iSCSI-target

6 серверов: 2 × Xeon 5530; 48GB RAM

2 дисковые полки: 24 × 2TB SATA

Конфигурация тестовой среды

7

Oracle RAC Oracle DB EE Oracle DB EE

Appl Appl

Oracle ASM iSCSI-target iSCSI-target

6 серверов: 2 × Xeon 5530; 48GB RAM

2 дисковые полки: 24 × 2TB SATA

OEBS

Конфигурация тестовой среды

7

Oracle RAC Oracle DB EE Oracle DB EE

Appl Appl

Oracle ASM iSCSI-target iSCSI-target

Сон админа тревожен и краток

8

Сон админа тревожен и краток

8

OS config Oracle patches OEBS restoreadconfig0

4

8

12

Сон админа тревожен и краток

8

OS config Oracle patches OEBS restoreadconfig0

4

8

12

администрированиесон*

Задача от разработки

9

Задача от разработки

9

Параллельное внедрение 4 модулей OEBS

Задача от разработки

9

Параллельное внедрение 4 модулей OEBS

Требуется 20 тестовых сред

Задача от разработки

9

Параллельное внедрение 4 модулей OEBS

Требуется 20 тестовых сред

≈Админо-месяц

«Лучше день потерять,потом за пять минут долететь!»

10

Крылья, ноги и хвосты ТО «Экран», 1986

New age with cloud

11

Унификация

New age with cloud

11

Унификация

Утилизация

New age with cloud

11

Унификация

Утилизация

Онлайн миграция

New age with cloud

11

Унификация

Утилизация

Онлайн миграция

«On-demand»

New age with cloud

11

Что такое OpenStack

OpenStack — IaaS provider

13

OpenStack — IaaS providerРесурсы

13

OpenStack — IaaS providerРесурсы

–CPU, RAM, HDD

13

OpenStack — IaaS providerРесурсы

–CPU, RAM, HDD–VLAN, CIDR

13

OpenStack — IaaS providerРесурсы

–CPU, RAM, HDD–VLAN, CIDR–Образы VM

13

OpenStack — IaaS providerРесурсы

–CPU, RAM, HDD–VLAN, CIDR–Образы VM

Собирает VM

13

OpenStack — IaaS providerРесурсы

–CPU, RAM, HDD–VLAN, CIDR–Образы VM

Собирает VM

*aaS

13

OpenStack — IaaS providerРесурсы

–CPU, RAM, HDD–VLAN, CIDR–Образы VM

Собирает VM

*aaS

Security13

Когда использовать OpenStack?

14

Когда использовать OpenStack?

14

Когда использовать OpenStack?

Нужны виртуальные машины

14

Когда использовать OpenStack?

Нужны виртуальные машины

–больше 5

14

Когда использовать OpenStack?

Нужны виртуальные машины

–больше 5–на нескольких серверах

14

Когда использовать OpenStack?

Нужны виртуальные машины

–больше 5–на нескольких серверах

Провайдер VM

14

Попробовать OpenStack

15

Попробовать OpenStack

15

Официальная документация:

–docs.openstack.org

Попробовать OpenStack

15

Официальная документация:

–docs.openstack.orgИнструкции по установке от Bilel Msekni:

–bit.ly/yac2013_openstack_deploy

16

Quantum + OpenvSwitch + provider vlan

17

Compute-node

eth1

Quantum + OpenvSwitch + provider vlan

17

Compute-node

eth1

VM

eth0

Quantum + OpenvSwitch + provider vlan

17

Compute-node

eth1

VM

eth0

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

17

Compute-node

eth1

VM

eth0

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

17

magic

Compute-node

eth1

VM

eth0

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

17

magic

Compute-node

eth1

VM

eth0

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0 veth

17

magic

Compute-node

eth1

VM

eth0

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

105

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

105

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

Compute-node

eth1

VM

eth0

eth2 qbr1 vnet1

VM

eth0

eth1br-eth2

Quantum + OpenvSwitch + provider vlan

br-eth1

br-int

qbr0 vnet0

103

1

105

2

VLAN:

veth

17

magic

/etc/default/openvswitch-switch:

OVS_RESTART_SAVE_FLOWS=yes

Enterprise Oracle в OpenStack

Shaken, not stirred

Oracle в OpenStack OOB

19

Oracle в OpenStack OOB

19

OEBS

RAC DB DB

APPL APPL

ASM iSCSI iSCSI

OEBS

Oracle в OpenStack OOB

19

OEBS

RAC DB DB

APPL APPL

ASM iSCSI iSCSI

DB

APPL

Oracle в OpenStack OOB

19

OEBS

RAC DB DB

APPL APPL

ASM iSCSI iSCSI

OEBSDB

APPL ☣‎

Oracle в OpenStack OOB

Jumbo Frames

19

OEBS

RAC DB DB

APPL APPL

ASM iSCSI iSCSI

OEBSDB

APPL ☣‎

Oracle в OpenStack OOB

Jumbo Frames

Shared network interface

19

OEBS

RAC DB DB

APPL APPL

ASM iSCSI iSCSI

OEBSDB

APPL ☣‎

Oracle в OpenStack OOB

Jumbo Frames

Shared network interface

Security & Firewall

19

OEBS

RAC DB DB

APPL APPL

ASM iSCSI iSCSI

OEBSDB

APPL ☣‎

Jumbo Frames

20

Jumbo Frames

Default MTU not modifiable

20

Jumbo Frames

Default MTU not modifiable

LinuxBridge (fixed in Grizzly):

–bit.ly/yac2013_openstack_br_fixOpenvSwitch (fixed in Havana):

–bit.ly/yac2013_openstack_ovs_fix

20

Shared network interface

21

Shared network interface

21

br-eth2

eth2trunk

Shared network interface

21

br-eth2

eth2trunk

eth2.105

Shared network interfaceovs-vsctl \

! ! add-port br-eth2 eth2.105 tag=105 -- \

! ! set interface eth2.105 type=internal

21

br-eth2

eth2trunk

eth2.105

Shared network interfaceovs-vsctl \

! ! add-port br-eth2 eth2.105 tag=105 -- \

! ! set interface eth2.105 type=internal

21

ip addr add … dev eth2.105

ip link set eth2.105 up

ip route add …/… dev eth2.105

br-eth2

eth2trunk

eth2.105

Security

22

SecurityOracle RAC:

22

SecurityOracle RAC:

virtual interfaces

22

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

22

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

interconnect multicast UDP

22

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

interconnect multicast UDP

Disable firewall

22

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

interconnect multicast UDP

Disable firewall

22

OpenStack security:

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

interconnect multicast UDP

Disable firewall

22

OpenStack security:

ebtables

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

interconnect multicast UDP

Disable firewall

22

OpenStack security:

ebtables

iptables

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

interconnect multicast UDP

Disable firewall

22

OpenStack security:

ebtables

iptables

spoof-protection:

SecurityOracle RAC:

virtual interfaces

169.254.0.0/16

interconnect multicast UDP

Disable firewall

22

OpenStack security:

ebtables

iptables

spoof-protection:

MAC, IP, ARP

Firewall disabling

23

Firewall disabling

virsh nwfilter-edit nova-base

23

Firewall disabling

virsh nwfilter-edit nova-base

firewall_driver

23

Firewall disabling

virsh nwfilter-edit nova-base

firewall_driver /etc/nova/nova.conf:

23

Firewall disabling

virsh nwfilter-edit nova-base

firewall_driver /etc/nova/nova.conf:

nova.virt.firewall.NoopFirewallDriver

23

Firewall disabling

virsh nwfilter-edit nova-base

firewall_driver /etc/nova/nova.conf:

nova.virt.firewall.NoopFirewallDriver /etc/quantum/plugins/…/…ini:

23

Firewall disabling

virsh nwfilter-edit nova-base

firewall_driver /etc/nova/nova.conf:

nova.virt.firewall.NoopFirewallDriver /etc/quantum/plugins/…/…ini:quantum.agent.firewall.NoopFirewallDriver

23

Заключение

Результаты и взгляд в будущее

Что у нас получилось

25

Что у нас получилось

Proof of concept… success!

25

Что у нас получилось

Proof of concept… success!

Два облака, десятки серверов

25

Что у нас получилось

Proof of concept… success!

Два облака, десятки серверов

1 среда = 1 админо-минута

25

Что у нас получилось

Proof of concept… success!

Два облака, десятки серверов

1 среда = 1 админо-минута

–30 тестовых сред Oracle–20 прочих ВМ

25

Будущее

26

Будущее

Havana Release (2013.2)

– Quantum ➡ Neutron

26

Будущее

Havana Release (2013.2)

– Quantum ➡ Neutron* as a Services:

26

Будущее

Havana Release (2013.2)

– Quantum ➡ Neutron* as a Services:

FWaaS, LBaaS, DNSaaS, MySQLaaS, …

26

Спасибо за внимание

28

Сергей ФилимонцевСистемный администратор

+7  926  573-­‐41-­‐01

askort@yandex-team.ru

twi0er.com/troksa

;.com/sfilimontsev

top related