Openstack: Single node Installation and External Network Accessing Configuration Guide
Summary of installation
Step 0: Prerequisites
Step 1: Create Openstack hostsystem
Step 2: Config
Openstack host
system
: Install Openstackplatform
: Login Openstack
Step 5: Config to access external network
Step 0: Prerequisites
Software
RHEL-based Linux distributions such as CentOS, Scientific Linux, and so on. )
Hardware
Mac system.)
Step 1: Create Openstack host system
Make sure RAM size is bigger than 6GB
VDI is preferred.
Dynamically Allocation ispreferred.
Make sure Disk Size is greater than60GB.
2 ~ 4 processor is preferred.
Make sure following:
- Only one Adapter is needed.
- Adapter Type is “Bridge”.
- Promiscuous Mode is “Allow All”.
- Cable Connected is checked.
Make sure following:
- Load CentOS installation image to the driver.
- Launch virtual instance we created just now.
- Install CentOS to the instance.
- Most of configuration could be proceed by clicking “Next” button with one exception that Ethernet Card Connection needs to be turn on in manually.
Step 2: Config OpenStack host system
- Reboot virtual instance after installation
- Log into instance with the correct credential info, such as root/root
- vi /etc/environment
LANG=en_US.utf-8 LC_ALL=en_US.utf-8
- source /etc/environment
- Turn off firewall:
systemctl disable firewalld systemctl stop firewalld
(Note: Ignore the error message, such as “Failed to execute operation: Access denied”)
Step 3: Install Openstack platform
yum install -y centos-release-openstack-newton
yum update–y
yum install -y openstack-packstack
vi ~/.bash_profile
export LANG="en_US.UTF-8” export LC_COLLATE="en_US.UTF-8” export LC_CTYPE="en_US.UTF-8” export LC_MESSAGES="en_US.UTF-8” export LC_MONETARY="en_US.UTF-8” export LC_NUMERIC="en_US.UTF-8” export LC_TIME="en_US.UTF-8” export LC_ALL="en_US.UTF-8”
- packstack --allinone--provision-demo=n --os-neutron-ovs-bridge-mappings=extnet:br-ex
--os-neutron-ovs-bridge-interfaces=br-ex:eth0--os-neutron-ml2-type-drivers=vxlan,flat,vlan
Note:
- Ensure “flat” and “vlan” have been added into ml2-type-drivers list.
- Ensure eth0 is not your current network card which is using for yourssh connection.
Step 4: Login Openstack
- cat keystonerc_admin
unset OS_SERVICE_TOKEN export OS_USERNAME=admin export OS_PASSWORD=98a76dc776654792 exportOS_AUTH_URL=http://10.140.253.44:5000/v2.0 export PS1='[\u@\h \W(keystone_admin)]\$' exportOS_TENANT_NAME=admin exportOS_REGION_NAME=RegionOne
- Log into openstack dashboard viahttp://10.140.253.XXX/dashboard (admin/98a76dc776654792)
- Start your openstackjourney.
Step 5: Config to access external network
5.1 Create Bridge
- vi /etc/sysconfig/network-scripts/ifcfg-br-ex
DEVICE=br-ex DEVICETYPE=ovs TYPE=OVSBridge BOOTPROTO=static IPADDR=10.140.253.XXX# Old eth0 IP since we want the network restart to not # kill the connection, otherwise pick something outside your dhcprange NETMASK=255.255.255.0 # your netmask GATEWAY=10.140.253.1 #yourgateway DNS1=123.123.123.XXX #yournameserver ONBOOT=yes - vi /etc/sysconfig/network-scripts/ifcfg-ethXXX
DEVICE=ethXXX TYPE=OVSPort DEVICETYPE=ovs OVS_BRIDGE=br-ex ONBOOT=yes
- service network restart
5.2 Create External Network
Log into dashboard via http://10.140.253.XXX/dashboard with
your credential.Go to Admin->System->Networks
Create a network with following info:
Name:external_network
Project:admin
Provider Network Type: Flat
Physical Network: extnet
Segment ID: <any number>
Admin State: UP
Shared:checked
External Network: checked
5.3 Create Subnet of External Network
- Subnet Name: <any string>
- Network Address: <any available range> e.g.10.140.253.100/28
- IP Version: IPv4
- Gateway IP: <same with your host gateway> e.g.
10.140.253.1
- Uncheck DHCP
- Allocation Pools: <any avaliable range within your Network(10.140.253.100/28>
- DNS Name Servers: <your host DNS servers> e.g.123.123.123.123 , 8.8.8.8
5.4 Create Internal Network
- Name: private_network
- Project: admin
- Provider Network Type: VXLAN
- Physical Network: extnet
- Segment ID: <any number>.
- Admin State: UP
- Shared: checked
- External Network: unchecked
5.5 Create Subnet of Internal Network
- Subnet Name: <any string>
- Network Address: <any available range> e.g.192.168.100.0/24
- IP Version: IPv4
- Uncheck DHCP
- Allocation Pools: <any available range within your Network(192.168.100.0/24>
- DNS Name Servers: <your host DNS servers> e.g.123.123.123.123, 8.8.8.8
5.6 Create Router
- Router Name: <Any string>
- Admin State: UP
- External Network: external_network
5.7 Associate Networks
- Go back to Network Topology
- Click “Add Interface”
- IP Address: <gateway server ip of the internal network> e.g.192.168.100.1
5.8 Config Security Policy
- Go to Project -> Compute -> Access & Security
- Click“Manage Rules” button on “default” item.
- Remove all default rules.
- Recreate rules for protocals“ICMP”, “TCP” and “UDP” with both Ingress and Egress directions.
5.9 Create Instance
- Go back to Network Topology, you should see the external network and the private network are connected with a router
- Click“Launch Instance” button to create an vm
- Boot Source: Image
- Volume Size: <The min size of your image>
- Create New Volume: YES
- Delete Volume on Instance Delete:YES
- Allocated:<Your image> e.g. cirros
Choose appropriate flavor size.
e.g m1.tiny
Choose the network you want to create an instance on.
e.g. “private_network”
Choose the key pair which you want to used for logging into the instance later on.
Click “Launch Instance” to start instance.
Once the instance is created successfully, you should see the Power State is changed to “Running”.
5.10 Allocate Floating IP
- Click the instance drop-down list
- Click Associate Floating IP
- Click”+” button to creating an floating IP address in a specific Network.
- If it’s already done, you can also choose an
avaliable IP address from the drop-down list.
- Choose the network you want to create an IP address on. (e.g. “External_network”)
- Click “Allocate IP”
- Choose the IP address we created just now.
- Click “Associate” button
Now, you should see 2 IP address havebeen associated with the instance.
One is for
private_network;another one (Floating IP) is forexternal_network.
5.11 Instance Login
- Click the Instance name and switch to “Console” tab. You could log into the instance.
- Type your credential info to login. e.g.cirros/cubswin:)
5.12 IP Binding
If you check the network information, you would find that there is no any IPv4 address bind to the instance.
Neither192.168.100.11, nor 10.140.253.100
Execute following 2 commands:
sudo ifconfig eth0 192.168.100.11 netmask 255.255.255.0 sudo route add default gw 192.168.100.1
Now, the private IP address has been associated with the instance.
(We do not need to bind the public IP 10.140.253.100 here, because the HTTP requests will be transferred to the outside world by the router which is connected “private_network”
and “external_network”.
More importantly, that is why10.140.253.100 is an floating IP, and how does it work.)
Ping 8.8.8.8 is OK.
However, Ping by domain name is not working.
e.g. ping www.google.com
sudo vi /etc/resolv.conf
nameserver 123.123.123.123 nameserver 8.8.8.8
Ping www.google.comis OK.
Ping the instance from ”external_network” is pass as well.
6 Useful Tools
# show current network info
ip a
# show current gateway info
route netstat -rn
# show current network namespace
ipnet ns list
e.g. qrouter-bc826659-8f64-4f82-8f20-8fb76e3c5d9d
#execute command via specific network
ipnet ns exec qrouter-bc826659-8f64-4f82-8f20-8fb76e3c5d9d ping www.google.com
#bind specific ip to network interface
ifconfig eth0 192.168.100.11 netmask 255.255.255.0
#add default gateway route
route add default gw 192.168.100.1
Reference:
http://www.learnlinux.org.za/courses/build/net-admin/ch01s11.html
https://www.rdoproject.org/install/quickstart/
https://www.rdoproject.org/networking/neutron-with-existing-external-networ
Openstack: Single node Installation and External Network Accessing Configuration Guide的更多相关文章
- Devstack single node Installation on VM
Last three days, I want to install devstack on my virtual machine on Vmware Workstation.The VM'syste ...
- RDO Stack:VMs cannot access external network.
Issue: There are many root causes to make your openstack vm instances cannot be reached from externa ...
- Hadoop MapReduce Next Generation - Setting up a Single Node Cluster
Hadoop MapReduce Next Generation - Setting up a Single Node Cluster. Purpose This document describes ...
- Hadoop Single Node Setup(hadoop本地模式和伪分布式模式安装-官方文档翻译 2.7.3)
Purpose(目标) This document describes how to set up and configure a single-node Hadoop installation so ...
- Setting up a Single Node Cluster Hadoop on Ubuntu/Debian
Hadoop: Setting up a Single Node Cluster. Hadoop: Setting up a Single Node Cluster. Purpose Prerequi ...
- [原]openstack-kilo--issue(二十)External network cannot is not reachable associate Port
issue==== INFO neutron.api.v2.resource [req-79a36d02-114b--b9ed-0a10c6d69451 ] update failed (client ...
- Installing Apache Hadoop Single Node
转载请注明出处:http://www.cnblogs.com/wubdut/p/4681286.html platform: Ubuntu 14.04 LTS hadoop 1.2.1 1. inst ...
- 4.创建OpenStack的node环境脚本
创建OpenStack的node环境脚本 使用source admin-openrc.sh来运行脚本 在任意目录下创建admin-openrc.sh文件 vim ~/admin-openrc.sh e ...
- all rows from client_id can grow infinitely compared to a single node when hashing by client_id
all rows from client_id can grow infinitely compared to a single node when hashing by client_id Re: ...
随机推荐
- Struts(十六):通过CURD来学习Struts流程及ModelDriven的用法
背景: 从一个Member的增删改查,来了解Struts2的运行原理及学习ModelDriven拦截器.Preparable拦截器. 新建项目实现列表的展示及删除功能: web.xml <?xm ...
- Array方面Js底层代码学习记录
一..clear() →Array function clear() { this.length = 0; return this; } 返回清除item的空数组. 例子: var fruits = ...
- linux samba服务配置
1.下载 wget+rpm或yum install 2.配置/etc/samba/smb.conf cat smb.conf | grep setsebool 执行终端打印出来的字符串 setsebo ...
- [LeetCode] Largest Palindrome Product 最大回文串乘积
Find the largest palindrome made from the product of two n-digit numbers. Since the result could be ...
- 跨域访问 - 跨域请求 同源策略概念对跨域请求的影响 及几种解决跨域请求的方法如 jsonp
为什么会设置同源策略 > 适用于浏览器的一种资源访问策略 > 同源策略(Same origin policy)是一种约定,它是浏览器最核 心也最 基本的安全功能,如果缺少了同源策略,则浏览 ...
- Java8-Collect收集Stream
Collection, Collections, collect, Collector, Collectos Collection是Java集合的祖先接口. Collections是java.util ...
- 【swift,oc】ios开发中巧用自动布局设置自定义cell的高度
ios开发中,遇到自定义高度不定的cell的时候,我们通常的做法是抽取一个frame类,在frame类中预算好高度,再返回. 但是苹果出来自动布局之后...春天来了!!来看看怎么巧用自动布局设置自定义 ...
- Mysql之库表操作(胖胖老师)
SQL概念:结构化查询语言(SQL = Structured Query Language),也是一种编程语言(数据库查询和程序设计语言),可以用于数据的存取及查询,更新,管理关系型数据库系统ps: ...
- 实验吧_密码忘记了(vim编辑器+代码审计)&天网管理系统(php弱比较+反序列化)
密码忘记了 一开始尝试了各种注入发现都无效,在网页源码中找到了admin 的地址,输入地址栏发现并没有什么有用的信息,随便输个邮箱,网页返回了一个地址 ./step2.php?email=youmai ...
- [USACO 07NOV]Cow Relays
Description For their physical fitness program, N (2 ≤ N ≤ 1,000,000) cows have decided to run a rel ...