...
Code Block |
---|
mkdir /var/tmp/Roost/certs; cd /var/tmp/Roost/certs # Copy your organisation SSL certs here # OR generate SSL certs |
Steps - Install SSL Certs
Get the SSL_certs.key and SSL_certs.crt file for your organisation domain and put it under a folder that will be accessible to the current user. Preferred to be kept under /var/tmp/Roost/certs
It is possible to use a self generated certificate (not recommended though)
You can generate a self-signed certificate using command given below
The “root.cer” will have to be installed to the certificate authority on all Roost user systems as a trusted certificate. Article with steps for all OS is mentioned here Install the Certificate Authority
Instructions for generating the self-signed certs is given below.
Code Block cd /var/tmp/Roost/certs curl -L https://remote-roostprod.s3.us-west-1.amazonaws.com/get-cert.sh -o get-cert.sh chmod +x get-cert.sh # Follow the instructions displayed after executing this script ./get-cert.sh
Update the root.cnf and server.cnf to reflect your organisation name and the DNS entries
Run the open_ssl commands displayed in the output of get-certs.sh
4.4 Roost Installation
Download Roost Installation Script
Code Block cd /var/tmp/Roost curl -L https://remote-roostprod.s3.us-west-1.amazonaws.com/roost-enterprise.sh -o roost-enterprise.sh chmod +x roost-enterprise.sh
Download config.json
Code Block curl -L https://remote-roostprod.s3.us-west-1.amazonaws.com/main-config.json -o config.json
Sample Config looks like the below
Replace the values to reflect for your organisation
Keep values empty of the client_id/secrets for the 3rd party that is not needed
Keep ENV_DATABASE detail unchanged if database is not external
Add JWT_SECRET
Recommend value of remote_console_proxy is same as enterprise_dns unless you want to start proxy elsewhere.
If your servers are behind Load Balancer user load_balancer : “true” for different configuration.
Code Block { "enterprise_name": "MyCompany", "enterprise_logo": "https://mycompany.ai/logos/LOGO-mycompany.png", "enterprise_email_domain": "mycompany.io", "enterprise_dns": "mycompany.io", "remote_console_proxy": "mycompany.io" "admin_email": "admin@mycompany.io", "email_sender": "noreply@mycompany.io", "email_sender_pass": "", "load_balancer": "false", "enterprise_ssl_certificate_path": "/var/tmp/Roost/certs/server.cer", "enterprise_ssl_certificate_key_path": "/var/tmp/Roost/certs/server.key", "ENV_SERVER": { "DEFAULT_PORT": 3000, "JWT_SECRET": "32-character-secure-long-secret", "GOOGLE_CLIENT_ID": "", "GOOGLE_CLIENT_SECRET": "", "AZURE_CLIENT_ID": "", "AZURE_CLIENT_SECRET": "", "GITHUB_CLIENT_ID": "", "GITHUB_CLIENT_SECRET": "", "LINKEDIN_CLIENT_ID": "", "LINKEDIN_CLIENT_SECRET": "" }, "is_own_sql": "true", "ENV_DATABASE": { "MYSQL_HOST": "database-1-instance-1.region.rds.amazonaws.com", "MYSQL_PORT": 3306, "MYSQL_USERNAME": "MyUser", "MYSQL_PASSWORD": "MyPassword", "MYSQL_ROOT_PASSWORD": "AdminPassword" } }
Start Roost Control Plane Server
Code Block cd /var/tmp/Roost ./roost-enterprise.sh -i all -c config.json
Verifying the Roost.ai components
Connect to the public_ip/login using a browser
Use the 3rd party auth to connect to the control-plane
Next Steps:
Go to Admin Settings and
Enable cloud vendor of choice and provide default settings
Add the webconsole-proxy EC2 details in the “Configure EC2 Launcher”
Enable JumpHost and refresh the page
Go to JumpHost settings and add the webconsole-proxy EC2 details as 'default' jumpHost
...