zoukankan      html  css  js  c++  java
  • Sahara中的数据模型

    声明:

    本博客欢迎转载。但请保留原作者信息,并请注明出处!

    作者:郭德清

    团队:华为杭州OpenStack团队


         本文主要是介绍下Sahara中一些常见的数据模型。

    1、Config

         用于描写叙述配置信息的实体对象。

    属性

    类型

    描写叙述

    name

    string

    配置的名称。

    description

    string

    配置的描写叙述。

    config_type

    enum

    配置的类型,包含:string、integer、boolean、enum。

    config_values

    list

    当配置是枚举(enum)类型的时候,用于保存可能的值。

    default_value

    string

    配置的默认值。

    applicable_target

    string

    这个值能够是类似get_node_processes返回的某个service的值。也能够是general。

    scope

    enum

    值能够是node或者cluster

    is_optional

    bool

    假设改值设置为false。并且default_value为空,那么用户必须传入这个配置。

    priority

    int

    值能够是1、2。

    UI显示的时候用的,1表示显示,2表示用户须要点击一个button才干看到。

    2、Instance

         集群中的某个虚拟机。

    属性

    类型

    描写叙述

    instance_id

    string

    虚拟机ID。

    instance_name

    string

    虚拟机名称。

    internal_ip

    string

    虚拟机之间通信的IP。

    management_ip

    string

    从外部网络可以訪问虚拟机的IP。

    volumes

    list

    虚拟机挂载的卷。

    nova_info

    object

    nova的虚拟机对象。

    username

    string

    Sahara用于远程訪问虚拟机的username。

    hostname

    string

    和instance_name的名字一样。

    fqdn

    string

    全称域名。

    self.instance_name + '.' + CONF.node_domain

    remote

    helpers

    运行远程操作的帮助对象。

    3、Node Group

         虚拟机组。

    属性

    类型

    描写叙述

    name

    string

    集群Node Group的名字。

    flavor_id

    string

    创建虚拟机用的套餐。

    image_id

    string

    创建虚拟机用的镜像。

    node_processes

    list

    每一个节点上跑的进程,如namenode、datanode等。

    node_configs

    dict

    节点配置。如:"HDFS": {"DataNode Heap Size": 1024}

    volumes_per_node

    int

    每一个节点挂载卷的个数。

    volume_size

    int

    卷的大小。

    volume_mount_prefix

    string

    卷的挂载路径。

    floating_ip_pool

    string

    浮动IP池名字。这个Node Group的每一个虚拟机都会有分配一个这个浮动IP池的IP。

    count

    int

    这个Node Group的虚拟机数量。

    username

    string

    Sahara远程连接虚拟机的username。

    configuration

    dict

    节点配置和集群配置的合并。

    storage_paths

    list

    数据存储路径。没有挂载卷的时候,是在/mnt文件夹下。

    假设有挂载了2个卷,volume_mount_prefix是/volume/disk。那么这个值就是[‘/volume/disk1’,’/volume/disk2’]

    4、Cluster

         包含全部集群相关的信息,用户集群的创建和扩容。

    属性

    类型

    描写叙述

    name

    string

    集群名字。

    tenant_id

    string

    集群相应的租户ID。

    plugin_name

    string

    插件名称。

    hadoop_version

    string

    虚拟机上跑的Hadoop的版本号。

    default_image_id

    string

    用户创建虚拟机默认的镜像。

    node_groups

    list

    node group列表。

    cluster_configs

    dict

    集群的配置。比方:"HDFS": {"dfs.replication": 3}

    cluster_template_id

    string

    集群的模板ID。

    user_keypair_id

    string

    虚拟机的keypair。用于用户登录虚拟机。

    neutron_management_network

    string

    网络ID。假设use_neutron设置成True,那么虚拟机会分配一个这个网络的IP。

    anti_affinity

    list

    不同的主机上跑的进程。

    description

    string

    集群描写叙述。

    info

    dict

    额外的信息。

    5、数据库中的表


          有兴趣的话。能够登录数据库。查看对应的表结构:



    【參考资料】

    https://sahara.readthedocs.org/en/stable-juno/devref/plugin.spi.html#object-model


  • 相关阅读:
    linux 彻底删除文件及 find命令permission refused问题解决
    ubuntu系统中dpkg lock问题分析及解决
    ubuntu server18.04 更换默认源为阿里源-加速
    docker安装与卸载( liunx )
    ubuntu下dpkg lock问题
    docker pull报x509问题及docker启动失败问题解决
    windows 常用命令行操作
    uwsgi运行django应用是报错no app loaded. going in full dynamic mode
    internal server error原因及解决
    docker-compose启动容器后执行脚本或命令不退出 | 运行内部程序
  • 原文地址:https://www.cnblogs.com/cxchanpin/p/6916599.html
Copyright © 2011-2022 走看看