README.md

    OceanBase Deployer

    OceanBase Deployer (OBD) is an installation and deployment tool for open-source OceanBase software. It is also a package manager for managing all open-source OceanBase software. This topic describes how to install OBD, how to use OBD, and OBD commands.

    Install OBD

    You can install OBD by using these methods:

    Method 1: Install OBD by using RPM packages (only for CentOS 7 or later)

    sudo yum install -y yum-utils
    sudo yum-config-manager --add-repo https://mirrors.aliyun.com/oceanbase/OceanBase.repo
    sudo yum install -y ob-deploy
    source /etc/profile.d/obd.sh

    Method 2: Install OBD by using the source code

    Before you install OBD by using the source code, make sure that you have installed these dependencies:

    • gcc
    • wget
    • python-devel
    • openssl-devel
    • xz-devel
    • mysql-devel
    • pip
    • pyinstaller

    Notes:

    You can install pip for Python2.7 or Python3.8 refer below cmd:

    curl -o get-pip.py https://bootstrap.pypa.io/pip/2.7/get-pip.py # for Python2.7 
    curl -o get-pip.py https://bootstrap.pypa.io/get-pip.py # for Python3.8 
    sudo python get-pip.py

    then install pyinstaller as below:

    sudo pip install pyinstaller==3.6

    To install OBD on Python2.7, run these commands:

    sh rpm/build.sh build
    source /etc/profile.d/obd.sh

    To install OBD on Python3.8, run these commands on Python2.7 first:

    sh rpm/build.sh executer

    Then run these commands on Python3.8:

    sh rpm/build.sh build_obd
    source /etc/profile.d/obd.sh

    Start an OceanBase cluster

    After you install OBD, you can run these commands as the root user to start a local single-node OceanBase cluster. Before you run the commands, make sure that these conditions are met:

    • You have logged on as the root user.
    • Ports 2882 and 2883 are available.
    • Your server has at least 8 GB of memory.
    • Your server has at least 2 CPU cores.

    NOTE: If the preceding conditions are not met, see Use OBD to start an OceanBase cluster.

    NOTE: For the convenience of using root here, OBD and OceanBase database do not have any restrictions on running users. We do not recommend that you use root in production.

    obd cluster deploy c1 -c ./example/mini-local-example.yaml
    obd cluster start c1
    # Connect to the OceanBase Database by using a MySQL client.
    mysql -h127.1 -uroot -P2883

    Use OBD to start an OceanBase cluster

    If you want to know how to use OBD to start an OceanBase cluster, please see Use OBD to start an OceanBase cluster.

    Other OBD commands

    OBD provides multiple-level commands. You can use the-h/--help option to view the help information of sub-commands.

    Q&A

    Q: How can I specify the version of a component?

    A: You can add the version declaration to the deployment configuration file. For example, you can specify the version of OceanBase-CE V3.1.0 in the deployment configuration file in the following format:

    oceanbase-ce:
      version: 3.1.0

    Q: How can I use a component of a specific version?

    A: You can add the package_hash or tag declaration to the deployment configuration file. For example, if you have tagged your compiled OceanBase-CE, you can specify it by tag. For example:

    oceanbase-ce:
      tag: my-oceanbase

    You can also use package_hash to specify a specific version. When you run an obd mirror command, OBD will return an MD5 value of the component. The MD5 value is the value of package_hash.

    oceanbase-ce:
      package_hash: 929df53459404d9b0c1f945e7e23ea4b89972069

    Q: How can I modify the startup process after I modify the code of OceanBase-CE?

    A: You can modify the startup plug-ins in the ~/.obd/plugins/oceanbase-ce/ directory. For example, after you add a new startup configuration item for OceanBase-CE V3.1.0, you can modify the start.py file in the ~/.obd/plugins/oceanbase-ce/3.1.0 directory.

    Q:How to update OBD?

    A:You can use the obd update command to update OBD. When you are done with the update, use the obd --version command to confirm the version of OBD.

    Protocol

    OBD complies with GPL-3.0.

    TPC-C

    项目简介

    A deployer and package manager for OceanBase open-source software.

    🚀 Github 镜像仓库 🚀

    源项目地址

    https://github.com/oceanbase/obdeploy

    发行版本 13

    v1.5.0

    全部发行版

    贡献者 11

    开发语言

    • Python 99.0 %
    • Shell 1.0 %