| Оглавление |
|---|
| Предупреждение |
|---|
This utility only supports upgrading Ubersmith installations running version 4.0 or newer. It does not support directly upgrading older versions of Ubersmith. |
Summary
The Ubersmith Installer is a command line utility that allows a system administrator to install (or upgrade) Ubersmith on a supported platform without assistance from Ubersmith Support. This can be useful when access to the Ubersmith environment is restricted, or for provisioning development/testing environments. The installer can be used to install both the Ubersmith Core (frontend) software as well as the Ubersmith Appliance.
...
Ensure that your host has been updated to the latest available packages as well as the latest Linux kernel. If necessary, reboot to ensure that the system is running the latest kernel.
Install Dependencies
The installation process will fail without these dependencies:
CentOS
| Блок кода | ||
|---|---|---|
| ||
sudo yum install gcc libffi-devel python-devel openssl-devel epel-release git |
Once EPEL is configured, run:
| Блок кода | ||
|---|---|---|
| ||
sudo yum install python-pip |
| Блок кода | ||
|---|---|---|
| ||
sudo dnf remove buildah podman
sudo dnf install gcc libffi-devel python3-devel openssl-devel git
sudo alternatives --set python /usr/bin/python3
sudo alternatives --install /usr/bin/pip pip /usr/bin/pip3.6 1 |
Debian / Ubuntu LTS
| Блок кода | ||
|---|---|---|
| ||
sudo apt install build-essential libssl-dev libffi-dev python3-dev python3-setuptools python3-pip git
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.7 1
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
|
| Блок кода | ||
|---|---|---|
| ||
sudo apt install build-essential libssl-dev libffi-dev python3-dev python3-setuptools python3-pip git
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 1
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
|
| Блок кода | ||
|---|---|---|
| ||
sudo apt install build-essential libssl-dev libffi-dev python3-dev python3-setuptools python3-pip git
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1
|
Install Docker
The Ubersmith Installer requires that Docker, as well as some additional dependencies be installed prior to installing Ubersmith. The script located at:
...
can be helpful when installing Docker. Ensure that Docker is configured to start on boot; in many cases it may not be. Depending on the operating system used, you may be able to enable the docker service with:
| Блок кода |
|---|
# systemctl enable docker |
Ensure that Docker is up and running:
| Блок кода |
|---|
# service docker start |
The installation process will fail without these dependencies.
CentOS 7
| Блок кода |
|---|
$ sudo yum install gcc libffi-devel python-devel openssl-devel epel-release |
Once EPEL is configured, run:
| Блок кода |
|---|
$ sudo yum install python-pip |
Debian 8 / Ubuntu LTS
| Блок кода |
|---|
| Примечание |
If |
Clone the Repository or Download a Release
On the host Ubersmith is to be installed on, clone the ubersmith_installer repository.
| Блок кода |
|---|
$ git clone https://github.com/TeamUbersmith/ubersmith_installer.git |
...
As root, run ./install_ubersmith.sh to install Ubersmith Core or ./install_appliance.sh to install the Ubersmith Appliance. Ensure the path you choose can be written to by the user running the installation script, and that the user is a member of the docker group.
| Предупреждение |
|---|
| Ubersmith Core and Ubersmith Appliance should not be deployed to the same host. |
Follow the prompts to complete the installation.
| Блок кода |
|---|
Checking for pip... Installing Ansible... Installing Ubersmith... Choose an installation directory for Ubersmith [/usr/local/ubersmith]: Enter the addresshostname where you will be hosting Ubersmith [ubersmith.example.com]: Enter the email address of the Ubersmith administrator [admin@example.org]: |
At this point the installer will begin, and will create the directory structure and supporting files to bring Ubersmith online.
Ubersmith Core and Ubersmith Appliance should not be deployed to the same host.
Configure
Ubersmith is now listening for HTTPS connections; to load the Ubersmith installation wizard go to the address of IP of your Ubersmith host in your web browser, for example:
https://10.0.0.1Walk
or, if you have a DNS record created, use that name directly:
https://ubersmith.example.com
Ensure you are connecting via HTTPS, and walk through the steps of the Ubersmith Setup Wizard.
| Предупреждение |
|---|
The Setup Wizard still has some legacy configuration steps relating to configuring Cron Tasks and Postfix aliases. These steps can be ignored, they are configured automatically during the installation process. These pages will be removed in an upcoming release. You may also encounter an error regarding a missing Zookeeper PHP module, this can also be ignored. |
Search
When configuring the Solr search engine, use the values:
- ServerHost:
ubersmith_solr_1 - Port:
8983 - Path:
/solr/collection1
License
When prompted for license details, enter the licensing username and password provided to you by Ubersmith Support. If you do not have licensing details, please contact Ubersmith Support for assistance.
| Информация |
|---|
During the installation process, the Python package manager
to ensure these binaries are readily available to you from the command line. Failure to do so may cause the following commands to fail, indicating that the command cannot be found. |
At the end of the Setup Wizard, you will be prompted to delete the setup directory. The command provided does not account for the Ubersmith webroot being located in a container, so run the following command insteadChange to the directory you deployed Ubersmith to (by default /usr/local/ubersmith) and run:
| Блок кода |
|---|
# docker-compose exec ubersmith_web_1 rm -rf /var/www/ubersmith_root/app/www/setup |
With the /setup directory removed, the Ubersmith web user interface will now load, and the login page will appear. Log in with the username and password created during the installation process.
Upgrade
Before upgrading, be sure to back up your Ubersmith database.
Before upgrading, make sure you have the latest version of the installation / upgrade utility.
Clone the Repository or Download a Release
On the host Ubersmith is to be installed on, clone the ubersmith_installer repository.
| Блок кода |
|---|
$ git clone https://github.com/TeamUbersmith/ubersmith_installer.git |
...
| Предупреждение |
|---|
If you have never used the Ubersmith installation / upgrade utility before, configuration is necessary. Without running the configuration step, the upgrade utility will fail. |
As root, run configure.sh to configure the location of your existing Ubersmith installation, as well as your Ubersmith URL/address, and an email address associated with the Ubersmith administrator. Follow the steps to configure your environment:
| Блок кода |
|---|
$ ./configure.sh
Configuring the Ubersmith installer for an existing installation...
Current path in use by Ubersmith / Appliance [/usr/local/ubersmith]:
Enter the address in use by Ubersmith / Appliance [ubersmith.example.com]: ubersmith.mydomain.com
Enter the email address of the Ubersmith administrator [admin@example.org]: jsmith@mydomain.com
[ output follows ]
localhost : ok=3 changed=1 unreachable=0 failed=0 |
This step creates the file .ubersmith_installer.ini in the home directory of the user running the configuration utility.
| Предупреждение |
|---|
If upgrading from a version of Ubersmith prior to 4.2.0, make sure to add
Failing to make this update will cause those containers not updated to default to using UTC as a timezone. |
| Предупреждение |
|---|
When upgrading from versions prior to Ubersmith 4.3.0, a change is being made to the naming convention for the database host. Prior versions had the database host defined as |
To upgrade Ubersmith, run the ./upgrade_ubersmith.sh script. The upgrade process will complete automatically.
Troubleshooting
- When running CentOS, if the installer is unable to install
pip, you may need to enable the EPEL yum repository. Do not install the OS provided `pip` packages for Ubuntu and Debian as the version of `pip` provided is older and has difficulty installing the dependencies for the Ubersmith installer.
python-setuptoolswill install theeasy_installutility, which will allow the installer to install a more contemporary version ofpip.Dependencies installed
byby
willpipwill installed using
thethe
option--useroption, which will install to the Python user install directory for your platform;
typicallytypically
for~/.local/. (See the Python documentationfor
forsite.USER_BASEfor full details.) This allows for the installer to be executed as a non-
userrootuser. You may want to add this directory to your PATH shell variable so that the supporting utilities (
docker-compose, for example) can be run without having to specify the full path to the utility. To do this, run:Блок кода export PATH="$HOME/local/.bin/:$PATH"