• ubuntu16.04 部署单机版devsatck


    准备使用devstack安装openstack N版,搞一套开发环境出来。一连整了4天,遇到各种问题,各种错误,一直到第4天下午4点多才算完成。

    在这个过程中感觉到使用devstack搭建openstack环境还是有难度的,不光对新手来说,对于我手动源码装过很多次的人来说也蛮有难度。或者说是我自己学习能力不够。

    个人感觉使用devstack,要想成功率高的话一定要选对linux版本。前三天使用ubuntu1604-desktop各种失败和报错,最后参考一篇博文才成功。

    准备:

    1. VMware
    2. ubuntu-1404-server(64位)

    技术分享

    网卡配置:

    auto eth0      
    
    iface eth0 inet static
    address 192.168.14.25
    gateway 192.168.14.1
    netmask 255.255.255.0
    dns-nameservers 192.168.14.1 auto eth1 iface eth1 inet manual

    虚拟机规格: 6G内存 + 50G磁盘

    安装过程:

      一、更换镜像源。(怕出问题可以不换,换了速度快)

      这里使用阿里镜像源,匹配16.04的源。编辑/etc/apt/source.list文件,替换内容为如下,然后更新。apt-get update

    deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multive

      二、安装必要工具。

      使用devstack需要两个工具软件:git 和 pip。准备安装之前下载这两个软件。

    apt-get install git
    apt-get install python-pip

      

      三、配置pip源。

      推荐使用的pip源是豆瓣的源。

      在/root下创建.pip文件夹,然后创建pip.conf文件,填入豆瓣源。

    cd /root
    mkdir .pip
    vim pip.conf
    
    [global]
    timeout = 6000
    index-url = http://pypi.douban.com/simple/
    [install]
    trusted-host = pypi.douban.com

      四、从github上拉取openstack  newton版本。首先进入到/home目录下,然后执行git  clone命令。(注:现在newton版本可能已经被下架,如失败可以到ocata分支)

     cd /home
     git clone http://git.trystack.cn/openstack-dev/devstack.git -b stable/newton

      五、创建stack用户。

      执行上一条命令之后,在/home文件夹下会产生一个devstack的文件夹。以root身份进入/home/devstack/tools/,执行create-stack-user.sh脚本。

      执行脚本之后会创建一个叫stack的用户,并赋予了root权限。

      六、创建配置文件local.conf。

      在/devstack路径下创建一个local.conf的配置文件,该文件包括了要安装的openstack的版本,服务,源码位置,日志位置等信息。

      由于安装过程中要从github上下文件网速不好会下载超时,然后报错,这里使用了九州云的git源。貌似九州云的镜像服务器最近不对,镜像的URL使用了官网的路径。

      

     [[local|localrc]]
    
    # use TryStack git mirror
    GIT_BASE=http://git.trystack.cn
    NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
    SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git
    
    #OFFLINE=True
    RECLONE=True
    
    # Define images to be automatically downloaded during the DevStack built process.
    DOWNLOAD_DEFAULT_IMAGES=False
    IMAGE_URLS="http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img"
    
    HOST_IP=192.168.14.25(你的虚拟机eth0网卡IP地址)
    
    # Credentials
    DATABASE_PASSWORD=stack2015
    ADMIN_PASSWORD=stack2015
    SERVICE_PASSWORD=stack2015
    SERVICE_TOKEN=stack2015
    RABBIT_PASSWORD=stack2015
    
    HORIZON_BRANCH=stable/newton
    KEYSTONE_BRANCH=stable/newton
    NOVA_BRANCH=stable/newton
    NEUTRON_BRANCH=stable/newton
    GLANCE_BRANCH=stable/newton
    CINDER_BRANCH=stable/newton
    
    
    #keystone
    KEYSTONE_TOKEN_FORMAT=UUID
    #安装时依赖报错所以不启动这个服务
    disable_service tempest
    
    
    
    ## Swift
    SWIFT_BRANCH=stable/newton
    ENABLED_SERVICES+=,s-proxy,s-object,s-container,s-account
    SWIFT_REPLICAS=1
    SWIFT_HASH=011688b44136573e209e
    
    
    # Enabling Neutron (network) Service
    disable_service n-net
    enable_service q-svc
    enable_service q-agt
    enable_service q-dhcp
    enable_service q-l3
    enable_service q-meta
    enable_service q-metering
    enable_service neutron
    
    ## Neutron options
    #注掉网络创建命令,成功率会增高。 Q_USE_SECGROUP=True #FLOATING_RANGE="201.0.0.0/24" #FIXED_RANGE="12.0.0.0/24" #Q_FLOATING_ALLOCATION_POOL=start=201.0.0.30,end=201.0.0.39 #PUBLIC_NETWORK_GATEWAY="201.0.0.1" Q_L3_ENABLED=True PUBLIC_INTERFACE=eth1 Q_USE_PROVIDERNET_FOR_PUBLIC=True OVS_PHYSICAL_BRIDGE=br-ex PUBLIC_BRIDGE=br-ex OVS_BRIDGE_MAPPINGS=public:br-ex # #VLAN configuration. Q_PLUGIN=ml2 ENABLE_TENANT_VLANS=True # Logging LOGFILE=/opt/stack/logs/stack.sh.log VERBOSE=True LOG_COLOR=True SCREEN_LOGDIR=/opt/stack/logs

     七、修改目录权限
        chown -R stack:stack /home/devstack

     chmod -R stack:stack /opt/stack

    八 、执行stack.sh脚本。

      首先切换到stack用户,然后进入/home/devstack ,运行./stack.sh。

    我在家里是移动50M带宽的wifi,第一次成功是60分钟左右,第二次是45分钟左右。安装过程中顺利的话不会报错,如果报错超过两个以上基本上就很难完成。

    安装是一个折磨人的过程,一旦报错就会错误不断,深有体会。所以如果有童鞋按照我的教程配置运行出错请随时留言,避免走弯路。

  • 相关阅读:
    (C/C++学习)6.数组指针和指针数组
    (C/C++学习)5.C++中的虚继承-虚函数-多态解析
    (C/C++学习)4.C++类中的虚函数表Virtual Table
    (C/C++学习)3.C++中cin的成员函数(cin.get();cin.getine()……)
    (C/C++学习)2.C语言中文件流操作基本函数总结
    关于for,while与do while
    计算机算法-C语言-统计字母数字个数解
    计算书费
    Truncate table
    sqlserver 在脚本中,为所有字符前没有N标记的字符增加N
  • 原文地址:https://www.cnblogs.com/heitaoq/p/7920416.html
Copyright © 2020-2023  润新知