Skip to main content

Quick Installation via Ocboot

Use ocboot deployment tool to deploy Cloudpods CMP multi-cloud management version in All in One mode.

Prerequisites

Note

The content in this chapter is to quickly deploy Cloudpods service through the deployment tool. If you want to deploy a highly available cluster in a production environment, please refer to: High Availability Installation.

Environment Preparation

Machine Configuration Requirements

  • Operating System: Supported distributions vary depending on CPU architecture. The current situation of supported distributions is as follows:
  • The operating system needs to be a clean version, as the deployment tool will build the specified version of Kubernetes cluster from scratch. Ensure that the system does not have container management tools such as Kubernetes and Docker installed, otherwise conflicts may occur and cause installation abnormalities.
  • Minimum system requirements: CPU 4 cores, 8GiB memory, 100GiB storage.
  • The storage paths used by virtual machines and services are both under /opt directory. Thus, it is recommended to set up a separate mount point for the /opt directory in an ideal environment.
    • For example, create a separate partition for /dev/sdb1 and format it as ext4, then mount it to the /opt directory through /etc/fstab.

Install Ansible and Git

First, you need to install ansible and git. The minimum required version of Ansible is 2.11.12.

# Install ansible and git locally
$ yum install -y epel-release git python3-pip
$ python3 -m pip install --upgrade pip setuptools wheel
$ python3 -m pip install 'ansible<=9.0.0'

Install Cloudpods

The deployment tool is available at https://github.com/yunionio/ocboot. You need to clone the tool using git clone and then run the run.py script to deploy the service. The following is the operation steps:

# Use git clone the ocboot deployment tool locally
$ git clone -b release/3.11 https://github.com/yunionio/ocboot && cd ./ocboot

Next, execute the run.py script to deploy the service. The host_ip parameter is the IP address of the deployment node, which is optional. If not specified, the service will be deployed using the default route. If your node has multiple network cards, you can specify host_ip to select the corresponding network card to listen to the service.

# Directly deploy and pull the container image from registry.cn-beijing.aliyuncs.com
$ ./run.py cmp <host_ip>

# If there is a problem with slow pip installation package download,
# you can use the -m parameter to specify the pip source
# For example, use https://mirrors.aliyun.com/pypi/simple/ source below.
$ ./run.py -m https://mirrors.aliyun.com/pypi/simple/ cmp <host_ip>

The ./run.py script will call the ansible to deploy the service. If the deployment process encounters problems that cause the script to exit, you can repeat the script to retry.

Note

If you are deploying based on the CentOS 7 distribution, there will be one restart caused by the kernel. The ./run.py script will be interrupted. Please wait for the operating system to restart, then execute the ./run.py script again to perform the subsequent steps.

Deployment Complete

....
# After completing the deployment, the following output will be displayed, indicating a successful run
# Open https://10.168.26.216 in the browser, where the ip is set to <host_ip>
# You can access the front-end interface by logging in with admin/admin@123
Initialized successfully!
Web page: https://10.168.26.216
User: admin
Password: admin@123

Then use a browser to access https://10.168.26.216. Enter admin for username and admin@123 for password to enter the Cloudpods interface.

login page

Change the api_server access url

The api_server option is the address of the access point for the entire platform, which affects the front-end CloudShell, vnc or Web SSH connection. It is generally impossible to open CloudShell or login the virtual machine through the front-end SSH when the api_server configuration has not been set correctly.

You need to modify it manually according to your environment, refer to the document: Change service api_server configuration.

Start using Cloudpods

Import public cloud or other private cloud platform resources

Cloudpods can unify and manage resources from other cloud platforms.

In the Multi-Cloud Management menu, select Cloud Accounts and create a new one. Fill in the authentication information for the corresponding cloud platform according to your needs. After configuring the cloud account, the Cloudpods service will synchronize the corresponding cloud platform resources. Once the synchronization is complete, you can view them in the front-end.

Multi-Cloud Management

FAQ

1. How to reinstall?

Follow the steps below to reinstall:

  1. Execute kubeadm reset -f to delete the Kubernetes cluster.

  2. Run the run.py script of ocboot again.

2. When creating a cloud account, there is no desired cloud platform to manage?

Please refer to feature-config ............... TODO

3. Other questions?

Other questions are welcome to be submitted on the Cloudpods github issues page: https://github.com/yunionio/cloudpods/issues, we will reply as soon as possible.