设为首页 收藏本站
查看: 920|回复: 0

[经验分享] OpenStack conceptual architecture

[复制链接]

尚未签到

发表于 2018-6-2 11:12:00 | 显示全部楼层 |阅读模式
  OpenStack conceptual architecture
DSC0000.jpg

  Based on OpenStack Icehouse release
  

  calculate instances for openstack
  cpu_allocation_ratio=16.0
ram_allocation_ratio=1.5

nova flavor-list

number of instances = ( cpu_allocation_ratio x total physical cores ) / virtual cores per instance
number of instances = ( ram_allocation_ratio x total physical memory ) / flavor memory size
size of instances = number of instances x flavor disk size ( /var/lib/nova/instances )



  Load environment variables
  unset OS_SERVICE_TOKEN OS_SERVICE_ENDPOINT
vi ~/adminrc
export OS_USERNAME=admin
export OS_PASSWORD=ADMIN-USER-PASSWORD
export OS_TENANT_NAME=admin
export OS_AUTH_URL=http://controller:35357/v2.0

chmod 600 ~/adminrc ; source ~/adminrc
echo "source ~/adminrc " >> ~/.bash_profile
  

  Get user-role-list script
  vi get-user-role-list.py
#!/usr/bin/python
import os, prettytable, sys

from keystoneclient.v2_0 import client
from keystoneclient import utils

keystone = client.Client(username=os.environ['OS_USERNAME'], password=os.environ['OS_PASSWORD'],
                         tenant_name=os.environ['OS_TENANT_NAME'], auth_url=os.environ['OS_AUTH_URL'])

f_user = f_tenant = ""
if "-u" in sys.argv: f_user = sys.argv[sys.argv.index("-u")+1]
if "-t" in sys.argv: f_tenant = sys.argv[sys.argv.index("-t")+1]

tenants = [t for t in keystone.tenants.list() if f_tenant in t.name]
users =   [u for u in keystone.users.list() if f_user in u.name]

pt = prettytable.PrettyTable(["name"]+[t.name for t in tenants])
for user in users:
    row = [user.name]
    for tenant in tenants:
        row.append("\n".join([u.name for u in user.list_roles(tenant.id)]))
    pt.add_row(row)
print pt.get_string(sortby="name")
  

  chmod +x get-user-role-list.py
  

  Notes:
  Install OpenStack Clients
  yum -y install python-ceilometerclient python-cinderclient python-glanceclient python-heatclient python-keystoneclient python-neutronclient python-novaclient python-swiftclient python-troveclient

  

  Using standalone mysql server:
  

  Hosted MySQL Server
yum -y install mysql mysql-server MySQL-python

all other openstack nodes
yum -y install mysql MySQL-python openstack-utils

  

  

  1. The public_url parameteris the URL that end users would connect on. In a public
cloud environment, this would be a public URL that resolves to a public IP address.

2. The admin_url parameteris a restricted address for conducting administration.
In a public deployment, you would keep this separate from the public_URL by
presenting the service you are configuring on a different, restricted URL. Some
services have a different URI for the admin service, so this is configured using this
attribute.

3. The internal_url parameterwould be the IP or URL that existed only within the
private local area network. The reason for this is that you are able to connect to
services from your cloud environment internally without connecting over a public IP
address space, which could incur data charges for traversing the Internet. It is also
potentially more secure and less complex to do so.

  

  KVM
  yum -y install qemu-kvm libvirt python-virtinst bridge-utils
yum -y install httpd
ln -s /media /var/www/html/centos6
service httpd start

  

  for using virt-manager
  qemu-img create -f qcow2 /var/lib/libvirt/images/centos6.img 10G
  
virt-install -n centos6 -r 1024 --disk path=/var/lib/libvirt/images/centos6.img,format=qcow2 --vcpus=1 --os-type linux --os-variant=rhel6 --graphics none --location=http://192.168.1.12/centos6 --extra-args='console=tty0 console=ttyS0,115200n8 serial'

  

  

  sohu epel:
  [epel]
name=epel
  baseurl=http://mirrors.sohu.com/fedora-epel/6Server/x86_64/

  enabled=1
gpgcheck=0
  

  my notes:
  vi /root/checkiso.sh
  #!/bin/bash
DIR=/icehouse
if [ "$(ls -A $DIR 2> /dev/null)" == '' ]; then
mount -o loop /tmp/OpenStackIcehouse.iso /icehouse/

  fi
  chmod +x /root/checkiso.sh
  echo "/root/checkiso.sh" >> root/.bash_profile

  

  nova live migration libvirt related configuration:

  for CentOS 6.5
  vi /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
auth_tcp = “none”

vi /etc/sysconfig/libvirtd
LIBVIRTD_ARGS="--listen"

service libvirtd restart
  

  for Ubuntu 14.04
  vi /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
auth_tcp = “none”
  

  vi /etc/init/libvirt-bin.conf
  改前 : exec /usr/sbin/libvirtd $libvirtd_opts
改后 : exec /usr/sbin/libvirtd -d -l
  

  vi /etc/default/libvirt-bin
  改前 :libvirtd_opts=” -d”
改后 :libvirtd_opts=” -d -l”
  

  service libvirt-bin restart

  

  my notes:
  controller node:
[ml2]
type_drivers=vlan
tenant_network_types=vlan
mechanism_drivers=openvswitch
[ml2_type_vlan]
network_vlan_ranges = physnet1:1:4094


network node:
[ml2]
type_drivers=vlan
tenant_network_types=vlan
mechanism_drivers=openvswitch
[ml2_type_vlan]
network_vlan_ranges = physnet1:1:4094
[ovs]
bridge_mappings = physnet1:br-eth1

vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none

ovs-vsctl add-br br-eth1
ovs-vsctl add-port br-eth1 eth1

computer node:
[ml2]
type_drivers=vlan
tenant_network_types=vlan
mechanism_drivers=openvswitch
[ml2_type_vlan]
network_vlan_ranges = physnet1:1:4094
[ovs]
bridge_mappings = physnet1:br-eth1

vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none

ovs-vsctl add-br br-eth1
ovs-vsctl add-port br-eth1 eth1



  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-506487-1-1.html 上篇帖子: openstack vm VCPU和RAM过载 下篇帖子: 向 OpenStack 贡献您的代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表