Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 30 Next »

This Document will guide you how to install CloudCX on your own server.

At present, the installation strategy for different versions is slightly different. Please choose the installation strategy that suits you according to the actual situation. It is recommended to install the latest version.

Installation Overview

We recommend that you separate the database from the application service during installation to increase its load. The calculation of the database will reduce the actual performance of the application, which will be described in detail in this article.

图片-20240205-062328.png

If you are just a demo deployment for testing, please refer to XXX for additional instructions.

Supported Linux OS

  • Ubuntu 20.04 (LTS) Focal, Ubuntu Impish 21.10, Ubuntu 22.04 (LTS) Jammy

  • Debian Buster 10, Debian Bullseye 11, Debian Bookworm 12

  • It only supports 64bit OS

Installation of CloudCX is possible on most unix environments, but not officially supported

Install CloudCX Application Server

Application Server Hardware requirements

Storage

  • Applications Services basic storage

50G storage space is necessary for the installation of the application, which will be used for the storage of images and all kinds of log information.

  • Applications Files storage

For file storage, we support two methods: local storage and object storage. The necessary hard drive space largely depends on your usage, the size and number of attachments that you receive through your conversations etc.

Consider using a object storage option provided by AWS, Azure etc, if you want to stay flexible and accomodate the growing storage requirements. CloudCX also supports other s3 api compatible services for example: Minio.

Note: Local storage is recommended to be selected only in the test environment or if there is no large capacity expansion requirement in the future. We recommend using object storage to meet the storage expansion requirements that may exist in the future.

CPU

CPU requirements are dependent on the usage and expected workload. Your workload is influenced by factors such as - but not limited to - how active your users are, how many conversations do you recieve and the conversation channels which you are using.

The following is the recommended minimum CPU hardware guidance for a handful of example CloudCX conversation base sizes.

  • 4 cores is the recommended minimum number of cores and supports up to 10,000 conversations a day.

  • 8 cores supports up to 20,000 conversations a day.

  • More conversations? Consider scaling horizontally by adding more application servers.

NOTE: Each CPU core needs 2.5Ghz or Higher.

Memory

Memory requirements are dependent on the usage and expected workload. Your workload is influenced by factors such as - but not limited to - How active your users are, how many conversations do you recieve and the conversation channels which you are using.

The following is the recommended minimum Memory hardware guidance for a handful of example CloudCX conversation base sizes.

  • 8GB RAM is the required minimum memory size and supports up to 10,000 conversations a day.

    • We are always working to reduce the memory requirement.

  • 16GB RAM supports up to 20,000 conversations a day.

  • More conversations? Consider scaling horizontally by adding more application servers.

Note: Add at least 1GB of swap memory to the machine to ensure that the machine doesn't run out of resources during an upgrade.

Preparing the Linux Host Machine for CloudCX application Installation

Tasks that MUST be completed before installing CloudCX application

  • If the Linux on which CloudCX will be installed is located in LAN, assign a static LAN IP address; if it's in a public network, please assign a static IP address to the public network.

  • Install all available updates & service packs before installing CloudCX.

  • Do not install PostgreSQL on your CloudCX Server.

  • Ensure that all power-saving options for your System and Network adapters are disabled (by setting the system to High Performance).

  • Do not install TeamViewer, VPN, and other similar software on the host machine.

  • CloudCX must NOT be installed on a host that is a DNS or DHCP server.

  • Port must be permitted by your firewall: TCP: 9006, 9001, 443

  • Please also ensure the above ports have not been used by other applications.

  • Ensure server date-time is synced correctly, how to check date-time?

  • Ensure the server must have at least 8G of memory.

  • Please reserve 50G space to install & use the CloudCX application.

  • Should perform all Linux commands by the root user, please su root First.

Note: If the CloudfCX runs on a Cloud platform such as AWS, and the cloud platform has the firewall itself, you MUST open the ports on the cloud platform firewall too.

Application Server Installation Steps

Before install Application Server, please reference https://cloudfon.atlassian.net/wiki/spaces/CCSD/pages/edit-v2/48857403#Install-CloudCX-Midware-Server to install Midware services(DB&Redis) first

1. Make directory and change directory

mkdir -p /opt/cloud_cx/ && cd /opt/cloud_cx/

Note: /opt/cloud_cx/ is an example here, you can change to your directory name, and this directory will storage user data.

2. Download install scripts

curl https://raw.githubusercontent.com/cloud-cx/cloudfon-cx-install/main/v3.3.x/cloud_cx_ctl.sh -o cloud_cx_ctl.sh
curl https://raw.githubusercontent.com/cloud-cx/cloudfon-cx-install/main/v3.2.x/install_docker_cx.sh -o install_docker_cx.sh

Note: cloud_cx_ctl.sh is an example here, you can download and rename to your name.

3. Install docker environment and configure firewall.

/bin/sh install_docker_cx.sh

4. Install CX Application Service

sh cloud_cx_ctl.sh run -i puteyun/cloud_cx:${tag} -t api -w ${DB_Addr} -m ${DB_Passwd} -r ${Redis_Passwd}

Note: Please MUST replace the Variables in the above command with the correctly value

  • ${tag} is the release version of CloudCX, for example: 3.2.3

  • ${DB_Addr} is the Database Server address of CX (Midware Services Address). It is recommended to keep the Midware in the same LAN for local installations or on the same switch for cloud installations to ensure better performance and connectivity.

  • ${DB_Passwd} is the password of the database

  • ${Redis_Passwd} is the password of the Redis

5. Login and configure the CloudFon CX.

Open Browser, input “https://host:9006/”, the “host” is the IP address or domain name of your CloudCX server (Linux Server). 

IMPORTANT: To complete CloudCX initial configuration, please refer to 'System initialization' guide.

6. CX Control Commands

  • Show CloudCX services status

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh status
  • Restart CloudCX services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh restart
  • Restart the selected service of CloudCX

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh restart -s [Service Name]
  • Stop CloudCX Services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh stop
  • Stop the selected service of CloudCX

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh stop -s [Service Name]
  • Start CloudCX Services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh start
  • Start the selected service of CloudCX

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh start -s [Service Name]
  • Uninstall CloudCX Services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh rm

Install CloudCX Midware Server

Midware Server(MariaDB & Redis) Hardware requirements

Midware Server includes database and caching services,default database is MariaDB and the caching service is Redis. Normally, they will be deployed on the same server. You can install it with one click according to our Midware Service installation script.

Storage

The server running MariaDB & Redis should have at least 10 GB of storage available, though the exact requirements depend on the usage of your CloudCX Instance.

CPU

The server running MariaDB & Redis should have at least 4 cores of CPU, though the exact requirements depend on the usage of your CloudCX Instance.

Memory

The server running MariaDB & Redis should have at least 8 GB of RAM, though the exact requirements depend on the usage of your CloudCX Instance.

Preparing the Linux Host Machine for CloudCX Midware Server Installation

Tasks that MUST be completed before installing CloudCX Midware:

  • If the Linux on which Midware will be installed is located in LAN, assign a static LAN IP address; if it's in a public network, please assign a static IP address to the public network.

  • Install all available updates & service packs before installing Midware.

  • Do not install PostgreSQL on your Midware Server.

  • Ensure that all power-saving options for your System and Network adapters are disabled (by setting the system to High Performance).

  • Do not install TeamViewer, VPN, and other similar software on the host machine.

  • Midware must NOT be installed on a host that is a DNS or DHCP server.

  • Ensure server date-time is synced correctly, how to check date-time?

  • Ensure the server must have at least 8G of memory.

  • Please reserve at least 10G space to install the Midware application.

  • Midware recommends deploying on the same LAN as the CloudCX application server(It's best to use the same switch in the cloud)

  • Mideware can also be deployed under different switches in the cloud, which requires exposing the ports of the database and Redis. Firewall policies can be added to control that only CloudCX application servers are allowed to access.

Midware Server Installation Steps

  1. Make directory and change directory

mkdir -p /opt/cloud_cx/ && cd /opt/cloud_cx/

Note: /opt/cloud_cx/ is an example here, you can change to your directory name, and this directory will storage user data.

  1. Download install scripts

curl https://raw.githubusercontent.com/cloud-cx/cloudfon-cx-install/main/v3.3.x/cloud_cx_ctl.sh -o cloud_cx_ctl.sh
curl https://raw.githubusercontent.com/cloud-cx/cloudfon-cx-install/main/v3.2.x/install_docker_cx.sh -o install_docker_cx.sh

Note: cloud_cx_ctl.sh is an example here, you can download and rename to your name.

  1. Install docker environment and configure firewall.

/bin/sh install_docker_cx.sh
  1. Install CX Midware Services

sh cloud_cx_ctl.sh run -i puteyun/cloud_cx:${tag} -t api -w ${DB_Addr} -m ${DB_Passwd} -r ${Redis_Passwd}

Note: Please MUST replace the Variables in the above command with the correctly value

  • ${tag} is the release version of CloudCX, for example: 3.2.3

  • ${DB_Addr} is the Database Server address of CX (Midware Services Address). It is recommended to keep the Midware in the same LAN for local installations or on the same switch for cloud installations to ensure better performance and connectivity.

  • ${DB_Passwd} is the password of the database

  • ${Redis_Passwd} is the password of the Redis

  1. Login and configure the CloudFon CX.

Open Browser, input “https://host:9006/”, the “host” is the IP address or domain name of your CloudCX server (Linux Server). 

IMPORTANT: To complete CloudCX initial configuration, please refer to 'System initialization' guide.

  1. CX Control Commands

  • Show CloudCX services status

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh status
  • Restart CloudCX services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh restart
  • Restart the selected service of CloudCX

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh restart -s [Service Name]
  • Stop CloudCX Services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh stop
  • Stop the selected service of CloudCX

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh stop -s [Service Name]
  • Start CloudCX Services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh start
  • Start the selected service of CloudCX

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh start -s [Service Name]
  • Uninstall CloudCX Services

cd /opt/cloud_cx && /bin/sh cloud_cx_ctl.sh rm

Uninstall Cloufon CX

Please use the below steps to uninstall the Cloudfon CX for Linux.

Uninstall the CX

Stop and delete the CX Docker instances.

cd /opt/cloud_cx
/bin/sh cloud_cx_ctl.sh stop
/bin/sh cloud_cx_ctl.sh rm

The following command will delete all local data of CloudCX. Before you understand the consequences of the command you are executing, please carefully confirm that it is correct before executing it.

cd /opt/
rm -fr cloud_cx

Note: cloud_cx is an example here, you can change to your directory name, and this directory will store user data.

  • No labels