openstack-ansible -- 3 Target hosts

Posted allcloud

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openstack-ansible -- 3 Target hosts相关的知识,希望对你有一定的参考价值。

Installing the operating system

Install the Ubuntu Server 14.04 (Trusty Tahr) LTS 64-bit operating system

至少一个network interface可以访问外网

locale to en_US.UTF-8

Configuring the operating system

Deployment host到taget host无密码登陆:

 

Copy Deployment hos的public key到taget /root/.ssh/authorized_keys

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.2.22

kernel版本为3.13.0-34-generic or later 

$ uname -a
Linux rpc-3 3.13.0-46-generic #79-Ubuntu SMP Tue Mar 10 20:06:50 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

 

# apt-get install bridge-utils debootstrap ifenslave ifenslave-2.6 \\
  lsof lvm2 ntp ntpdate openssh-server sudo tcpdump vlan

 

加入kernel 模块到/etc/modules来enable VLAN和接口bond

# echo \'bonding\' >> /etc/modules
# echo \'8021q\' >> /etc/modules

Configure NTP

Reboot the host to activate the changes

Configuring LVM

OpenStack-Ansible会自动配置LVM,手动配置如下:

# pvcreate --metadatasize 2048 physical_volume_device_path
# vgcreate cinder-volumes physical_volume_device_path

Designing the network

下表描述了container 网络如何连接host bridge和物理网络接口:

Target hosts 包含以下 network bridges:

  • LXC internal lxcbr0:
    • 必须的,自动生成,containers的外网连接,不连接到host上任何物理/逻辑接口,由iptable来做连通,它连接到container里面的eth0。
      配置在openstack_user_config.yml in theprovider_networks dictionary.
  • Container management br-mgmt:
    • 必须的.
    • Provides management of and communication among infrastructure and OpenStack services.
    • 手动创建,连接到物理/逻辑接口(一般是bond0上的一个vlan子接口),连接容器的eth1.
    • container network interface配置在openstack_user_config.yml
  • Storage br-storage:
    • Optional.但推荐
    • Provides segregated access to block storage devices between Compute and Block Storage hosts.
    • 手动创建,连接到物理/逻辑接口(一般是bond0上的一个vlan子接口),连接容器的eth2.
  • OpenStack Networking tunnel/overlay br-vxlan:
    • Mandatory.
    • Provides infrastructure for VXLAN tunnel/overlay networks.
    • 手动创建,连接到物理/逻辑接口(一般是bond1上的一个vlan子接口),连接容器的eth10.
  • OpenStack Networking provider br-vlan:
    • Mandatory.
    • Provides infrastructure for VLAN and flat networks.
    • 手动创建连接到物理/逻辑接口(一般是bond1上的一个vlan子接口),连接容器的eth11.  Does not contain an IP address because it only handles layer 2 connectivity.

compute service直接部署在物理机器而不是容器上。

how to use bridges for network connectivity

其中,计算节点有br-vxlan和br-vlan来分别做vxlan和vlan的联通,br-vxlan连到物理vlan的一个子节点,br-vlan不需要。

以下是网络节点上,DHCP agent, L3 agent, and Linux Bridge agent都部署在networking-agents container

以下是计算节点上vm如何连接:

Reference architecture

Bridge nameBest configured onWith a static IP
br-mgmt On every node Always
br-storage On every storage node When component is deployed on metal
On every compute node Always
br-vxlan On every network node When component is deployed on metal
On every compute node Always
br-vlan On every network node Never
On every compute node Never

 

host management节点的网络配置文件:

Physical interfaces:

# Physical interface 1
auto eth0
iface eth0 inet manual
    bond-master bond0
    bond-primary eth0

# Physical interface 2
auto eth1
iface eth1 inet manual
    bond-master bond1
    bond-primary eth1

# Physical interface 3
auto eth2
iface eth2 inet manual
    bond-master bond0

# Physical interface 4
auto eth3
iface eth3 inet manual
    bond-master bond1

Bonding interfaces:

# Bond interface 0 (physical interfaces 1 and 3)
auto bond0
iface bond0 inet static
    bond-slaves eth0 eth2
    bond-mode active-backup
    bond-miimon 100
    bond-downdelay 200
    bond-updelay 200
    address HOST_IP_ADDRESS
    netmask HOST_NETMASK
    gateway HOST_GATEWAY
    dns-nameservers HOST_DNS_SERVERS

# Bond interface 1 (physical interfaces 2 and 4)
auto bond1
iface bond1 inet manual
    bond-slaves eth1 eth3
    bond-mode active-backup
    bond-miimon 100
    bond-downdelay 250
    bond-updelay 250

Logical (VLAN) interfaces:

# Container management VLAN interface
iface bond0.CONTAINER_MGMT_VLAN_ID inet manual
    vlan-raw-device bond0

# OpenStack Networking VXLAN (tunnel/overlay) VLAN interface
iface bond1.TUNNEL_VLAN_ID inet manual
    vlan-raw-device bond1

# Storage network VLAN interface (optional)
iface bond0.STORAGE_VLAN_ID inet manual
    vlan-raw-device bond0

Bridge devices:

# Container management bridge
auto br-mgmt
iface br-mgmt inet static
    bridge_stp off
    bridge_waitport 0
    bridge_fd 0
    # Bridge port references tagged interface
    bridge_ports bond0.CONTAINER_MGMT_VLAN_ID
    address CONTAINER_MGMT_BRIDGE_IP_ADDRESS
    netmask CONTAINER_MGMT_BRIDGE_NETMASK
    dns-nameservers CONTAINER_MGMT_BRIDGE_DNS_SERVERS

# OpenStack Networking VXLAN (tunnel/overlay) bridge
auto br-vxlan
iface br-vxlan inet static
    bridge_stp off
    bridge_waitport 0
    bridge_fd 0
    # Bridge port references tagged interface
    bridge_ports bond1.TUNNEL_VLAN_ID
    address TUNNEL_BRIDGE_IP_ADDRESS
    netmask TUNNEL_BRIDGE_NETMASK

# OpenStack Networking VLAN bridge
auto br-vlan
iface br-vlan inet manual
    bridge_stp off
    bridge_waitport 0
    bridge_fd 0
    # Bridge port references untagged interface
    bridge_ports bond1

# Storage bridge (optional)
auto br-storage
iface br-storage inet static
    bridge_stp off
    bridge_waitport 0
    bridge_fd 0
    # Bridge port reference tagged interface
    bridge_ports bond0.STORAGE_VLAN_ID
    address STORAGE_BRIDGE_IP_ADDRESS
    netmask STORAGE_BRIDGE_NETMASK

Example for 3 controller nodes and 2 compute nodes

  • VLANs:
    • Host management: Untagged/Native
    • Container management: 10
    • Tunnels: 30
    • Storage: 20
  • Networks:
    • Host management: 10.240.0.0/22
    • Container management: 172.29.236.0/22
    • Tunnel: 172.29.240.0/22
    • Storage: 172.29.244.0/22
  • Addresses for the controller nodes:
    • Host management: 10.240.0.11 - 10.240.0.13
    • Host management gateway: 10.240.0.1
    • DNS servers: 69.20.0.164 69.20.0.196
    • Container management: 172.29.236.11 - 172.29.236.13
    • Tunnel: no IP (because IP exist in the containers, when the components aren’t deployed directly on metal)
    • Storage: no IP (because IP exist in the containers, when the components aren’t deployed directly on metal)
  • Addresses for the compute nodes:
    • Host management: 10.240.0.21 - 10.240.0.22
    • Host management gateway: 10.240.0.1
    • DNS servers: 69.20.0.164 69.20.0.196
    • Container management: 172.29.236.21 - 172.29.236.22
    • Tunnel: 172.29.240.21 - 172.29.240.22
    • Storage: 172.29.244.21 - 172.29.244.22

Simple architecture: A single target host

 

以上是关于openstack-ansible -- 3 Target hosts的主要内容,如果未能解决你的问题,请参考以下文章

全靠OpenStack-Ansible,eBay Classifieds躲过一大劫

TA-lib 库未安装在 pydroid 3 中?

芯片资料中的“TA=25℃和TC=25℃”这是啥意思。

如何成为游戏技术美术(TA)

自考新教材-p352_3

安装Ta-lib会导致gcc错误