zoukankan      html  css  js  c++  java
  • OpenStack allinone环境搭建

    Kolla简介

           Kolla项目起源于TripleO项目,聚焦于使用Docker容器部署OpenStack服务。该项目由Cisco于2014年9月提出,是OpenStack 社区Big Tent开发模式下的孵化项目。Kolla项目是一个支持Openstack服务以容器的方式部署,借助ansible部署工具可以简单的扩展到多个节点。同时,又借助于使用 heat 来编排 Kolla 集群。

           安装kolla,必须自己build镜像,由于网络的原因,经常会导致在build 镜像的时候失败。因此可以直接采用kolla官方提供的镜像文件,这样就不需要自己build镜像的环节,也就是搭建本地的docker registry。本次部署,我是直接采用公司的镜像仓库。

    一、安装基础包

    yum update

    yum install epel-release                                       #启用EPEL的repo

    yum install python-devel libffi-devel gcc openssl-devel git python-pip  #安装所需的依赖包

    pip install --upgrade pip                                      #这里踩过坑,先升级一下

    二、安装docker

        1. 设置repo,配置docker

    目前最新版本的Docker是1.13.1,Kolla目前支持的Docker是1.12.x,所以我们要指定Docker的版本来安装,并且一定要采用Docker官方的源。为yum添加一个repo文件,在centos7下面可以直接运行下面的代码。这个repo的目的就是为了让我们的yum可以根据repo文件里提供的连接去检索docker最新的安装包。

    tee /etc/yum.repos.d/docker.repo << 'EOF'

    [dockerrepo]

    name=Docker Repository

    baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/

    enabled=1

    gpgcheck=1

    gpgkey=https://yum.dockerproject.org/gpg

    EOF

      2. 安装Docker

    yum install docker-engine-1.12.5 docker-engine-selinux-1.12.5

      3. 设置docker

    mkdir /etc/systemd/system/docker.service.d

    tee /etc/systemd/system/docker.service.d/kolla.conf << 'EOF'

    [Service]

    MountFlags=shared

    EOF

      4. 重启docker服务

    systemctl daemon-reload

    systemctl enable docker

    systemctl restart docker

      5. 设置docker采用私有仓库

    vim /usr/lib/systemd/system/docker.service

    #ExecStart=/usr/bin/dockerd

    ExecStart=/usr/bin/dockerd --insecure-registry XXXXXXX:XXXX             #镜像仓库地址:端口号

      6. 重启docker服务

    systemctl daemon-reload

    systemctl restart docker

    三、安装Ansible

    yum install ansible

    四、kolla-ansible

      1. 下载kolla-ansible

    cd /home

    git clone http://git.trystack.cn/openstack/kolla-ansible -b stable/ocata

       2. 安装kolla-ansible

    cd kolla-ansible

    pip install .

       3. 复制相关文件

    cp -r etc/kolla /etc/kolla/

    cp ansible/inventory/* /home/

      4. 如果在虚拟机里装kolla,需要把virt_type=qemu,默认是kvm

    mkdir -p /etc/kolla/config/nova

    cat << EOF > /etc/kolla/config/nova/nova-compute.conf

    [libvirt]

    virt_type=qemu

    cpu_mode = none

    EOF

      5. 生成密码文件,这是登录Dashboard,admin使用的密码,可以根据自己需要进行修改

    kolla-genpwd

    vim /etc/kolla/passwords.yml

      6. 编辑文件

    vim /etc/kolla/globals.yml 

    kolla_install_type: "source"

    openstack_release: "4.0.3"                

    docker_registry: "XXXXXX"                #镜像仓库地址+端口号

    docker_namespace: "lokolla"

      7. 安装OpenStack

    kolla-ansible deploy -i /home/all-in-one

    五、验证部署

      1. 完成部署

    kolla-ansible post-deploy

      2. 安装OpenStack client

    pip install python-openstackclient

      3. 编辑文件/usr/share/kolla-ansible/init-runonce,网络需要根据实际情况修改,10.0.2.0的网络是通过路由器访问互联网,配置好这个,装完虚拟机就可以直接ping通。

    vim /usr/share/kolla-ansible/init-runonce

    EXT_NET_CIDR='10.0.2.0/24'

    EXT_NET_RANGE='start=10.0.2.150,end=10.0.2.199'

    EXT_NET_GATEWAY='10.0.2.1'

      4. 使用 init-runonce脚本创建基础环境

    source /etc/kolla/admin-openrc.sh

    cd /usr/share/kolla-ansible

    ./init-runonce

      5. 根据最后的命令提示,可直接创建虚拟机

    openstack server create \

    --image cirros \

    --flavor m1.tiny \

    --key-name mykey \

    --nic net-id=2ba93782-71e2-44d6-ad64-796c5853dcce \

    demo1

     

  • 相关阅读:
    在matlab中出现警告 Function call XX invokes inexact match
    VC2008调用matlab生成的dll和lib
    关于mwArray 的一些资料(一)
    关于C#中的3个timer类(申明是转贴的哦)
    C#教程 PDF
    我也做他个vote machine
    如何用UltraEdit编译C#源程序(再次申明这也是转贴的哦!)
    C#使用技巧调用DLL(还是转贴哦!)
    线程池
    Java web开发中如何自动生成文章html页面
  • 原文地址:https://www.cnblogs.com/viviane/p/10456034.html
Copyright © 2011-2022 走看看