
This add-on is operated by Yugabyte, Inc.
Fully-managed YugabyteDB-as-a-Service running on AWS and Google Cloud.
Yugabyte Cloud
Last updated 30 July 2020
The Yugabyte Cloud add-on is currently in beta.
Table of Contents
Yugabyte Cloud is a fully-managed database-as-a-service that can run on Amazon Web Services or Google Cloud Platform. Use YugabyteDB to power your SQL and Cassandra workloads.
Through the Yugabyte Cloud add-on, Heroku users can quickly have their YugabyteDB running on Amazon Elastic Kubernetes Service and Google Kubernetes Engine.
Gain Developer Agility - Leverage full power of SQL and distributed ACID transactions.
Operate Resilient Services - Ensure continuous availability even when underlying compute, storage or network fails.
Scale On-Demand - Add and remove nodes at will. No more over-provisioned clusters.
Lower User Latency - Leverage geo-distribution and global consistency to drive business growth.
Backed by Open Source - YugabyteDB is fully open source even for enterprise features.
Provisioning the add-on
Add Yugabyte Cloud to your app from the elements Marketplace or through the heroku
command. To try for free, run the following in Heroku CLI:
$ heroku addons:create yugabyte-cloud --app appname
Yugabyte Cloud is still in beta and should not be used in production.
Another option to deploy Yugabyte Cloud is through Heroku Buttons. If you have an existing Deploy to Heroku Button, Yugabyte Cloud can be used anywhere that accepts a PostgreSQL database connection. For example, a Heroku Button for deploying a Hasura GraphQL app with Yugabyte Cloud can be found here: https://elements.heroku.com/buttons/yugabyte/graphql-engine-heroku.
Getting your config vars
Yugabyte Cloud add-on creates two config variables:
YUGABYTE_CLOUD_DATABASE_URL
YUGABYTE_CLOUD_PORT
These variables correspond to the YSQL connection string. Check that your app can access these variables with heroku config
.
$ heroku config:get YUGABYTE_CLOUD_DATABASE_URL --app APP_NAME
YUGABYTE_CLOUD_DATABASE_URL => postgres://admin:your_password@your_ip_address:9433/yugabyte
The second variable YUGABYTE_CLOUD_PORT
is provided at your convenience but is already included in the database url string.
Use this URL with any application or client library that is PostgreSQL-compatible.
Connecting to your YugabyteDB instance
We recommend connecting with the cloud shell available from our portal. In your Heroku app dashboard, click the Yugabyte Cloud add-on to sign into a SSO session for Yugabyte Cloud’s native dashboard. You can also reach this page via the command line:
$ heroku addons:open yugabyte-cloud
From there, click on the card to view the cluster console. Click Connect on the top-right to open the Connect modal. You will see connection information and credentials for connecting manually. Click the Run in Cloud Shell to open the cloud shell in a new tab. You should be able to run queries directly on your database.
If you want to manually connect to your YugabyteDB instance, you will need to download the ysqlsh
binary from the Yugabyte website. Yugabyte Cloud also provides the option to connect using the Cassandra API – if you wish to use that instead of the ysqlsh
binary, use the ycqlsh
binary found in the same bin
directory after following the instructions above. Use the credentials found in the Connect modal from the Yugaybte Cloud dashboard to access the database. The generated command includes flags specifying the host (-h
), port (-p
), username (-U
), and database (-d
). Using the generated command will connect to the default database (yugabyte
). Here’s an example of the generated command:
$ PGPASSWORD=sx73qlpc ./bin/ysqlsh -h 35.236.85.97 -p 12201 -U admin -d yugabyte
ysqlsh (11.2-YB-2.2.0.0-b0)
Type "help" for help.
yugabyte=#
Deprovisioning the Add-on
Go your Heroku app’s dashboard and click the “Configure Add-ons” link to view your app’s existing add-ons. Click the button to the right of Yugabyte Cloud from the list and delete add-on.
From the Heroku CLI, you can delete the add-on with the following:
This will destroy all associated data and cannot be undone!
$ heroku addons:destroy yugabyte-cloud
For additional options, see this article.
Changing plans
Yugabyte Cloud is still in beta and only supports a free tier at this time. We plan to support paid plans at a later date and will allow users to freely change between plans.
Support
More information and documentation can be found here: https://docs.yugabyte.com/latest/yugabyte-cloud/
If you need to get in touch with us, join our Slack or reach out to Heroku Support.
To learn more about Yugabyte, visit our site.