configure - project-nano/releases GitHub Wiki
Install and Configure
Nano offers a variety of ways to install and configure platform modules:
-
Installer: The preferred method. The integrated installation package, including module binary and dependent RPM packages, an interactive installation based on the character interface. Primarily use on a clean system, the installer will automatically complete most of the installation and configuration work, it also provides suggestions for optional parameters, helping users quickly build a new platform.
-
Module auto configuration: Download and deploy the module binary executable directly. When the module is started for the first time, the module will prompt the user to configure the initial parameters. The module will automatically select the appropriate configuration and prompt the user interactively. The module needs to be configured separately, and it needs to ensure that each dependent component has been properly installed and configured, which is more suitable for experienced users to adjust the installed environment.
-
Auto configure by module: Directly download and deploy the binary executable. When the module first time starts, it will prompt to initiate the parameters and choose the proper configuration in most cases. This method has to configure modules separately, require that each component properly installed and setup, only for experienced users.
-
Modify configuration file: Each module has own configuration file, can directly be modified, only recommended for experts. **After modified configuration, you need to restart the module to take effect. **
System Requirements(v 0.1)
-
Virtualization enabled X86 servers, or nested virtualization enabled virtual machines
-
2 cores/4 GB memory/50 GB disk/1 network interface
-
CentOS 7.5(1804) Minimal
-
Operation system installed with network ready
Using Installer
Before beginning the installation, please read concept and communicate first, and design the module distribution and networking. For the first-time trial, you can choose to install all modules on the same server for testing and experience.
The Nano installer is available at here
Execute the following commands on the server to be installed, download, extract the installation package and start the installation.
$wget https://github.com/project-nano/releases/releases/download/v0.1/nano_installer_0.1.tar.gz
$tar zxfv nano_installer_0.1.tar.gz
$cd nano_installer_0.1
$./installer
After the installer starts, enter the index to select modules you want to install on the current server. Common components will install first, then the chosen modules.
Common Components
The installation of common components asks for the following information, press Enter to accept the default parameters is OK in most case.
-
Name of system user manages Nano. The installer assigns the permissions of all installed Nano modules and related components to this user, who starts the Nano modules and services. The default user is root, or modify to their needs.
-
Nano installation path. The default is "/opt/nano"
-
Communication Domain Settings. Configure the communication domain name, multicast address, and port of the currently Nanocluster, the default configuration recommended. See communicate for more details.
After parameters confirmed, the installer begins processing the following phases:
-
Digital Root Certificate of the Nano platform. Use for HTTPS transmission between modules. The installation package comes with a CA certificate in the "cert" directory. The installer will regenerate a new one if omitted.
-
Firewalld port. Nano will automatically open ports of Firewall according to the services installed.
-
IP forward. The Nano will enable the IP forward option for forwarding packets to the cloud instance.
Core Module Installation
This phase will ask for the following parameters:
-
Listening Address. Determine the IP address of the Core service to listen, and use this to determine the network segment where the entire cluster works. When only one network interface available, the Installer will automatically choose it and prompt the user, all you need is pressing Enter to accept. If multiple network interfaces available, the Installer will list the optional addresses, and let the user choose.
-
API Port. Determine the listening port that the Core module provides for REST API services. The default port is TCP 5850. The API interface uses the listening address of the Core. For example, if the listening address of the core is 172.16.8.6 and the API port is 5850, the actual API is served at 172.16.8.6:5850.
The Core using domain configurations defined in the previous step. This stage will also generate a self-signed TLS certificate in the module path for the image server.
FrontEnd Module Installation
The FrontEnd is a module that provides a web GUI for platform management, call backend API when a user requests. Only addresses of own service and the back-end API should configure.
-
Web Listening Address (Listen Address). The IP address that the user input in the browser to access the web portal. The installer will suggest the proper address for you.
-
Web Listening Port (Listen Port). The port number needs to access the web portal. The default is TCP 5870.
-
Backend Service Address. The API address that the web needs to call. If the listening address of the Core module selected in the previous step, the Installer will directly use the selected address, otherwise will prompt to input.
-
Backend Service Port. The listening port of the API service, the default is TCP 5850.
Cell Module Installation
In this phase, the installer installs bundled RPM packages first. If failed, it will try using network source of yum.
Instances running on the cell, handling the instance network packets require a bridge network.
After packages installed, the Installer checks if the default bridge br0 exists.
Bridge configuration will skip if the device already exists.
When the bridge omits, the installer will select an interface to build the bridge.if multiple interfaces available, the installer will prompt to choose a proper one.
The Installer will prompt to enter "yes" for final confirmation before building the bridge otherwise the process will terminate.
After the bridge configured, the installer generates domain configuration and enable the Polkit privilege.
Since the Cell service automatically discovers and joins the cluster, there is no need to configure any address about the Cell.
Start Services
After all modules installed, a working Nano platform requires at least one running instance of each service, including FrontEnd, Core, and Core.
Please keep in mind that start the Core module first.
All of the Nano modules can start using the command line like: <module_name> start
other usages:
stop: stopping the service
status: checking the running status
halt: terminating the service
Assume the Nano installed in the default path /opt/nano
$cd /opt/nano/core
$./core start
$cd ../cell
$./cell start
$ cd ../frontend
$./frontend start
The module will print success information on the console if starting successfully, or an error message will print.The module also generates a log file in the current path for troubleshooting.
After all the service running, open the browser and enter the Web page address prompted on the FrontEnd console, like 172.16.8.6:5870, you can begin managing your Nano platform via web portal now.
Initialize the Nano platform
Open the Nano Administration Portal in your browser, initialize the computing resource pool and create your first cloud instance. Download a prebuild disk image from here, and upload to Nano to save installing time.
-
"images"=>"upload", upload the disk image you downloaded from our site.
-
"compute pool" => "add cell", select unallocated resource node (Cell) from the list, and add it and go back to the resource pool.
-
"compute pool" => "cells", make sure that the Cell node is online.
-
"compute pool" => "create instance", choose specifications and select uploaded image in "System Image" menu, clone your first instance.
-
"compute pool" => "instances", try start instance, monitor via integrated remote control page.Check if everything is OK.
After successfully creating your first instance, you can upload an ISO file to install the operating system on your virtual machine; or build a template using the disk image, prepare for batch cloning instances; or add new physical nodes to expand your available resources.
You can get all manage work done via the web portal.
The above process can refer to the video: [Build your private cloud in 3 minutes] (https://www.nanos.cloud/en-us/demo.html) for the full process demonstration.
Manual Installation
For experienced users, you can also install the binary executable directly to a specified location and modify the configure files for greater flexibility.
For detailed configure defines of each module, see: [configure-core]] ](/project-nano/releases/wiki/[[configure-cell) | configure-frontend