Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

This Document 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.

There are two types of deployment way for you to select.

Easy heading
linkText4
linkText10
linkText3
linkText6
linkText5
relatedLinksLabels
linkText2
linkText1
headingTagsH1,H2,H3
sidebarMaxHeight450
linkType2Page
linkType3Page
linkType1Page
linkType10Page
sidebarTitleON THIS PAGE
linkUrl3
linkUrl4
linkUrl1
linkUrl2
linkUrl10
includedPageModeEnable_Included_Pages
linkText8
linkText7
relatedLinksOrderLabels_First
sidebarModeOpened
headingNumberingModeDisable_Numbering
linkText9
sidebarMarginRight60
relatedLinksTargetNew_Window
relatedLinksTitleRELATED LINKS
linkUrl9
linkUrl7
linkUrl8
numberedHeadingTagsH1,H2,H3
linkUrl5
linkUrl6
linkType8Page
linkType9Page
linkType6Page
headingLinkTextModeWrap
linkType7Page
linkType4Page
linkType5Page
sidebarWidth300
sidebarTop300
headingLinkExpandModeExpand_All_By_Default
headingLinkIndent20

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.

...

If you are just a demo deployment for testing, please refer to Testing Environment 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 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

Panel
panelIconIdatlassian-note
panelIcon:note:
bgColor#FFFAE6

NOTE: 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

Code Block
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

Code Block
curl https://raw.githubusercontent.com/cloud-cx/cloudfon-cx-install/main/v3.3.x/cloud_cx_ctl.sh -o cloud_cx_ctl.sh
Code Block
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.

Code Block
/bin/sh install_docker_cx.sh

4. Install CX Application Service

Code Block
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). 

Info

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

6. CX Control Commands

  • Show CloudCX services status

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

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

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

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

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

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

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

Code Block
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

  • Make directory and change directory

Code Block
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.

  • Download install scripts

Code Block
curl https://raw.githubusercontent.com/cloud-cx/cloudfon-cx-install/main/v3.3.x/cloud_cx_ctl.sh -o cloud_cx_ctl.sh
Code Block
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.

  • Install docker environment and configure firewal.

Code Block
/bin/sh install_docker_cx.sh
  • Install CX Midware Services

Code Block
sh cloud_cx_ctl.sh run -t mid -m ${db_passwd}  -r ${redis_passwod}

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

  • ${db_passwd} is the password of the database what you want to set.

  • ${redis_passwd} is the password of the Redis what you want to set.

Uninstall ClouCX

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

Uninstall the CX

Stop and delete the CX Docker instances.

Code Block
cd /opt/cloud_cx
/bin/sh cloud_cx_ctl.sh stop
/bin/sh cloud_cx_ctl.sh rm
Panel
panelIconIdatlassian-warning
panelIcon:warning:
bgColor#FF8F73

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.

Code Block
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.

Single Machine Deployment (Only for Testing)

For Testing, you only need provide the basic 4 cores CPU and 8G RAM, and then follow below comand to install the CX Application and Midware on the same machine.

Testing 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

Code Block
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

Code Block
curl https://raw.githubusercontent.com/cloud-cx/cloudfon-cx-install/main/v3.3.x/cloud_cx_ctl.sh -o cloud_cx_ctl.sh
Code Block
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.

Code Block
/bin/sh install_docker_cx.sh
  1. Install CX Application Service

Code Block
sh cloud_cx_ctl.sh run -i puteyun/cloud_cx:${tag}

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

  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). 

...

.

Two Types of Deployment Way

Distributed Deployment

Standalone Deployment