Sandbox installation guide¶
User account definitions and required privileges¶
UNIX Administrator: Responsible for accounts on the UNIX server
At minimum needs to be able to:
- Manage UNIX accounts (add/delete/change password)
- Manage UNIX groups and permissions
- Edit
/etc/hostsfile
Sandbox Application UNIX account: The UNIX account that the Sandbox server is installed under
- Write access to the
/etc/hostsfile is beneficial but not mandatory
Refinery Administrator: Administrator account on the core PROD/DR platform application
- Manages the production environment
Sandbox Administrator: Administrator account on the core Sandbox server application
- Manages the Sandbox server application
- Manages Sandbox user application accounts
Sandbox User: UNIX account and Sandbox client application account
Sandbox server installation¶
The server installation is to be performed on Sandbox Application UNIX account. This will be the UNIX account responsible for administering the Sandbox system; e.g. direct access to log files on disk
Installation for a Refinery Sandbox server is identical to installation for a production version of Refinery, with the note that the install configuration must have the below:
| Parameter | Value |
|---|---|
delta-install-type |
3 |
Set delta-control-clustering |
1 |
Sandbox manager pipeline definition¶
For sandboxes to be managed, the sandbox manager must be active in the system. You can define the sandbox manager with the following pipeline YAML:
sandbox.yaml
# KX Refinery - Sandbox Management Pipeline Configuration
# This pipeline provides a process to manage sandboxes
pipeline:
name: "sandbox"
type: "entrypoint"
enable-legacy-routing: false
expose-to-gw: false
expose-to-qr: false
enable-monitoring: false
proc-layout:
-
all: all-processes
taxonomy:
region: sbx
data-source: sbx
data-class: sbx
sub-class: sbx
processes:
sbxmgr:
instances: 1
enable-analyst: false
Then run with the CLI refinery pipeline --start sandbox
Sandbox client installation¶
A. Log in as the Sandbox User UNIX account who will own the Sandbox Client process
Note
There is a one-to-one mapping between UNIX accounts and Sandbox accounts. The Sandbox account name will match the UNIX user and only one Sandbox client can be installed per user.
B. Take the latest KxRefinerySandbox-X.X.X.tgz bundle and untar. There will be a packages and scripts directory similar to a core bundle. Licences should either be added to the scripts dir or targeted on install:
| File name | Description |
|---|---|
Analyst |
Sandbox infrastructure |
DaaSSandbox |
Sandbox infrastructure |
DeltaControl |
Base platform infrastructure |
DeltaStream |
Base platform infrastructure |
KDBPlus |
Kdb+ |
KxPlatformAPI |
Base platform infrastructure |
install.config |
Configuration |
installDeltaXML.sh |
Helper install script |
installRefinerySandboxClient.sh |
Main install script |
k4.lic |
kdb+ licence |
.delta.lic |
Delta licence |
C. Open the install.config and set, at minimum, the following configuration:
These are Required:
| Parameter | Description |
|---|---|
delta-install-dir |
Install location |
DELTACONTROL_PORT |
Delta control port of Sandbox server |
delta-control-master-hostname |
Hostname of Sandbox server |
delta-control-slave-hostname |
Hostname of Sandbox server |
delta-control-master-port |
Delta control port of Sandbox server |
delta-control-slave-port |
Delta control port of Sandbox server |
SBX_PORT |
Port to run the user's dedicated Sandbox process |
Verify the following are set as below:
| Parameter | Value |
|---|---|
delta-install-type |
2 |
delta-control-clustering |
1 |
start-delta-control |
0 |
start-delta-daemon |
0 |
Alternatively, copy your Sandbox servers install config and edit the settings as above.
D. Run the install by running:
./installRefinerySandboxClient.sh -p install.config
- The Sandbox process will automatically be created and booted
- The Sandbox process will be running on the port allocated above:
SBX_PORT - The Sandbox process will be running under the Sandbox user's UNIX account
- The username for the Sandbox will match the UNIX account. However, the password is independent
- On creation, the password will be
password. The user will be prompted for change on first login
Note
For a Sandbox client user to connect via Analyst UI, the /etc/hosts file on the Sandbox server must be updated to reflect the custom routed host.
Note
During a Sandbox client install, the Sandbox Server will attempt to update the /etc/hosts file. If it lacks the required permissions to do so, a text file with the required lines is automatically placed at the install location instead (delta-install-dir of the Sandbox Server). In this case, the UNIX Administrator will need to add these lines to the /etc/hosts file.
Setting up automatic data copy into Sandbox from application environment¶
Once installation of the Sandbox server is complete, data copy from production should be configured if required.
Refer the Sandbox Admin Guide for details.