Skip Navigation
Show nav
Heroku Dev Center
  • Get Started
  • Documentation
  • Changelog
  • Search
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
  • Documentation
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log inorSign up
View categories

Categories

  • Heroku Architecture
    • Dynos (app containers)
    • Stacks (operating system images)
    • Networking & DNS
    • Platform Policies
    • Platform Principles
  • Command Line
  • Deployment
    • Deploying with Git
    • Deploying with Docker
    • Deployment Integrations
  • Continuous Delivery
    • Continuous Integration
  • Language Support
    • Node.js
    • Ruby
      • Working with Bundler
      • Rails Support
    • Python
      • Background Jobs in Python
      • Working with Django
    • Java
      • Working with Maven
      • Java Database Operations
      • Working with the Play Framework
      • Working with Spring Boot
      • Java Advanced Topics
    • PHP
    • Go
      • Go Dependency Management
    • Scala
    • Clojure
  • Databases & Data Management
    • Heroku Postgres
      • Postgres Basics
      • Postgres Performance
      • Postgres Data Transfer & Preservation
      • Postgres Availability
      • Postgres Special Topics
    • Heroku Redis
    • Apache Kafka on Heroku
    • Other Data Stores
  • Monitoring & Metrics
    • Logging
  • App Performance
  • Add-ons
    • All Add-ons
  • Collaboration
  • Security
    • App Security
    • Identities & Authentication
    • Compliance
  • Heroku Enterprise
    • Private Spaces
      • Infrastructure Networking
    • Enterprise Accounts
    • Enterprise Teams
    • Heroku Connect (Salesforce sync)
    • Single Sign-on (SSO)
  • Patterns & Best Practices
  • Extending Heroku
    • Platform API
    • App Webhooks
    • Heroku Labs
    • Building Add-ons
      • Add-on Development Tasks
      • Add-on APIs
      • Add-on Guidelines & Requirements
    • Building CLI Plugins
    • Developing Buildpacks
    • Dev Center
  • Accounts & Billing
  • Troubleshooting & Support
  • Add-ons
  • All Add-ons
  • Yugabyte Cloud
Yugabyte Cloud

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

  • Provisioning the add-on
  • Getting your config vars
  • Connecting to your YugabyteDB instance
  • Deprovisioning the Add-on
  • Changing plans
  • Support

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.

Keep reading

  • All Add-ons

Feedback

Log in to submit feedback.

Ziggeo Zara 4

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Podcasts
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing

Subscribe to our monthly newsletter

Your email address:

  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Heroku Podcasts
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Facebook
  • Instagram
  • Github
  • LinkedIn
  • YouTube
Heroku is acompany

 © Salesforce.com

  • heroku.com
  • Terms of Service
  • Privacy
  • Cookies