CARTO can be installed on a local server, or set of servers, either directly or using our commercial installer.

Configuration: post-installation

Scheduled tasks

Warning
The cron tasks below are not necessary in Builder versions `>=4.0.0`, since they are automatically handled during the installation using systemd timers.

Some functionalities in CARTO require the running of certain tasks periodically (e.g. setting up a cron job). This section describes such tasks, their usage, and how to configure them.

To set up a cron job to be executed under a given user (e.g. carto), run the following command:

1
crontab -u carto -e

This will allow you to edit the crontab for that user using your default editor ($EDITOR), then all you need is just to paste the cron you want to run into that file (see below).

Sync tables

Sync tables is a feature within CARTO Builder that allows users to set up automatic table synchronization of datasets uploaded from external services. It is done as a background job in a Resque.

However, for this feature to work in an On-Premise installation, a rake task that checks for tables that need to be synced and enqueues them to be later processed by a Resque worker needs to be executed.

This rake task is meant to be run as a cron job (ideally every minute, running it less often may cause update lag).

1
*/1 * * * * /opt/carto/builder-tools/embedded/bin/carto-builder-exec-rake.sh cartodb:sync_tables
Note
`/opt/carto/builder-tools/embedded/bin` is the default installation path for builder tools. If that path was changed in the installation, modify accordingly.

OAuth tokens (CARTO_VERSION >= 3.0.1)

A rake task is required to periodically clean expired OAuth tokens. A reasonable schedule would be to run it every minute.

1
*/1 * * * * /opt/carto/builder-tools/embedded/bin/carto-builder-exec-rake.sh cartodb:oauth:destroy_expired_oauth_keys
Note
`/opt/carto/builder-tools/embedded/bin` is the default installation path for builder tools. If that path was changed in the installation, modify accordingly.
Disabling Telemetry (`CARTO_VERSION >= 4.1.0`) ~~~~~~~~~~~~~~~~~~~
Note
Telemetry is enabled by default from `4.1.0` version onwards. We gather different metrics to understand how the product is being used and be able to improve it. We can also help you understand how CARTO is being used in your organization, using these metrics. We don't collect user's data, or any kind of personal data.

To disable telemetry in your CARTO installation, please follow the instructions below:

  1. Disable Builder telemetry
1
2
3
4
sudo /opt/carto/tools/bin/cartoctl config set --fqdn "$(hostname --fqdn)" --role builder CARTO_BUILDER_PUBSUB_ENABLED false
node=node01.carto.lan old=true new=false

sudo /opt/carto/tools/bin/cartoctl nodes roles refresh-templates --release-path /opt/carto/tools builder resque
  1. Disable Platter
1
2
3
4
5
6
sudo /opt/carto/tools/bin/cartoctl nodes services stop platter
Services on carto-enterprise-byol-test1-vm:
  platter        stopped

sudo systemctl disable platter
Removed symlink /etc/systemd/system/multi-user.target.wants/platter.service
Note
Platter is available on versions `>= 4.1.0` and enabled by default for new installations. For upgrades, it would only be installed and enabled if you have explicitly installed it as specified in the upgrade docs. If you have not, you can skip this step, as Platter will not be there in the first place.

Enabling HTTPs (CARTO_VERSION >= 4.1.0) ~~~~~~~~~~~~~~~~~~

Note
The latest Chrome browser versions have dropped support for self signed certificates, so from `4.1.0` onwards, CARTO is installed by default over HTTP, instead of HTTPs. Following the steps below, CARTO will be switched to HTTPs using a custom certificate.
  1. Load a SSL certificate (setupssl)
Note
This step is optional, if you wanna keep using the default self signed certificate at your own risk.
1
2
3
4
sudo /opt/carto/tools/bin/cartoctl exec /opt/carto/tools/bin/carto-builder-ssl.sh /tmp/solutions.crt /tmp/solutions.key
Services on node01.carto.lan:
  nginx          restarted
SSL certificate successfully installed
  1. Enable HTTPs
1
2
sudo /opt/carto/tools/bin/cartoctl config set --fqdn "$(hostname --fqdn)" --role builder CARTO_BUILDER_SSL_REQUIRED true
node=node01.carto.lan old=true new=true
  1. Restart builder service
1
2
3
4
5
sudo /opt/carto/tools/bin/cartoctl nodes roles refresh-templates --release-path /opt/carto/tools --restart-services builder
Starting reload process on node node01.carto.lan
   Reloading role builder
     Restarting service builder
   Successfully reloaded builder