Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs: Add quick start guides for dragonfly cloud #233

Closed
wants to merge 20 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions docs/cloud/_category_.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
position: 9
label: "Cloud"

2 changes: 2 additions & 0 deletions docs/cloud/data-stores/_category_.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
position: 2
label: Data Stores
24 changes: 24 additions & 0 deletions docs/cloud/data-stores/backups.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
sidebar_position: 4
title: Backups and Retention
---


# Backups on Dragonfly cloud
Dragonfly Cloud offers automated backups for data protection and restoration. However, backups **are not enabled by default**. When creating a data store, you can enable backups and configure the retention period.


## Enabling Backups

1. During the data store creation process, check the "Enable Backups" option.

![backups](../../../static/img/backups.png)



2. Set the desired backup retention period:

- By default, backups are retained for 30 days.
- You can increase the retention period up to 60 days.


28 changes: 28 additions & 0 deletions docs/cloud/data-stores/duarability-vs-high-availability.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
sidebar_position: 3
title: Durability and Availability
---


## Eviction Policies

Eviction policy controls the behavior of the datastore when it maxes out its memory.

No Eviction - Items are never evicted and out of memory errors are returned when the data store is full.


Cache - The data store behaves as cache and evicts items to free space for new ones when the data store is full.


## High Availability

By default the data store will consist of a single Dragonfly server, this means that in case of software failures, hardware failures or cloud zone outages data is lost and the data store may be completely unavailable.

To increase availability of your data store you can select up to two replicas in different zones in the High Availability drop down.
The data store master node will be placed in the primary availability zone.
To avoid data transfer costs incurred by the cloud provider, select the primary availability zone to match the availability zone of your application.





22 changes: 22 additions & 0 deletions docs/cloud/data-stores/security.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
sidebar_postion: 2
description: Security
title: Security
---

## Securing your Data Stores

Dragonfly Cloud offers two primary methods for securing your data store

By default, data stores are deployed in a public network, accessible over the internet. This option is suitable for applications that require public access to the data store.

Private Endpoints:

For enhanced security, you can create private networks and deploy your data stores within them.


### Next Steps:

Learn how to create a data store, [Dragonfly Cloud Quick Start](/cloud/quick-start)

Explore the [Network documentation](../networks.md)
25 changes: 25 additions & 0 deletions docs/cloud/data-stores/specializations.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
sidebar_postion: 5
description: Specializations
title: Specializations
---

# Specializations

Dragonfly Cloud offers specializations that allow you to enable additional features and integrations for your data store with just a few clicks.


## BullMQ
Enable this for running BullMQ workloads, this requires you to apply redis cluster curly braces syntax for the queue names as described <a href="https://www.dragonflydb.io/docs/integrations/bullmq#2-queue-naming-strategies"> here</a>

If that is not possible please contact support.


## Support

At any time click the chat icon in the bottom right corner to ask anything, really, anything!


### Next steps

Learn more about DragonflyDB's BullMQ integration [here](../../integrations/bullmq)
39 changes: 39 additions & 0 deletions docs/cloud/data-stores/view-edit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
sidebar_position: 4
title: View and Edit
description: Editing your Data Stores
---

# View and Edit

After creating a data store, you can view and edit certain configurations to better suit your needs. To edit your data store:

1. Within the Data Stores tab, select the data store you wish to modify.
2. Click on the ellipsis menu (⋮) next to the data store, and choose "Edit."

![Edit Data Store](../../../static/img/edit-datastore.png)

On the Edit Data Store page, you can modify the following settings:

## Size

Adjust the size of your data store by specifying the desired amount of storage. This option allows you to scale your data store's capacity based on your application's requirements.

## Eviction Policy

Configure the eviction policy for your data store.

## Specializations

Enable or disable specializations like BullMQ for your data store.

## Backups

Enable or disable automatic backups for your data store.


After making the desired changes, click "Save" to apply the new configuration to your data store.

:::caution
Please note that modifying certain settings, such as increasing the data store size, may impact the pricing and incur additional costs.
:::
49 changes: 49 additions & 0 deletions docs/cloud/networks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
sidebar_postion: 2
title: Networks
---


## Networks

Dragonfly Cloud lets you create private networks for your datastores. After you create a private network you can:

- Create a VPC peering connection to connect the Dragonfly Cloud private network with a VPC in your cloud account to establish communication between the two networks over private ip space. For more details see [Peering Connections](./peering).

- Create a data store in the private network with a private endpoint For more details see [Data Store Security](./data-stores/security).


For more details see [Peering Connections](./peering). Create a data store in the private network with a private endpoint For more details see Data Store Security



A private endpoint data store in a private network provides better security, performance and reduces data transfer costs.

To create a private network navigate to the Networks tab and click +Network at the top right corner.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you use an image dor +Network ?


![networks](../../static/img/add-network.png)



Specify your cloud provider and cloud region.

Specify the CIDR block (ip range) of the to be created dragonfly cloud network.
The CIDR of the dragonfly cloud network must not overlap with any CIDR of your application VPC from where you will be issuing requests.

For example the following CIDR pairs are overlapping:
```bash
192.168.0.0/16, 192.168.0.0/16
192.168.0.0/16, 192.168.1.0/24
```

While the following CIDR pairs are not overlapping:

```
192.168.0.0/16, 172.16.0.0/16
192.168.0.0/16, 172.16.1.0/24
```

Once done click Create.

See Peering Connections to connect the Dragonfly Cloud network to a VPC in your cloud account to establish communication between the two networks.

42 changes: 42 additions & 0 deletions docs/cloud/peering.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
sidebar_postion: 3
title: Peering Connections
---



# Peering Connections

Peering connections are used to connect a Dragonfly Cloud private network with a VPC in your cloud account to establish communication between the two networks over private ip space.

Private IP space communication is more secure, performant and reduces data transfer costs incurred by cloud providers.


Once you created a private network as described in [Networks](./networks) click the network three dots menu and click +Connection


Continue to [AWS](#aws) or [GCP](#gcp) based on your cloud provider.


## AWS
Specify the region, CIDR, account ID (also called owner ID in AWS) and VPC ID of your AWS VPC from where you want to connect and click Create.

The connection will be created in an inactive state.

Accept the peering connection in your AWS account console
Create a route in your AWS VPC, set the destination to the CIDR of the dragonfly cloud private network, set the target to the AWS peering connection id.
More information about AWS peering connection here

At this point you should see the connection in state active in the dragonfly cloud console.

If you haven’t done so already, create a data store with a private endpoint.


## GCP
Specify the CIDR, GCP project ID and VPC ID of your GCP VPC from where you want to connect and click Create.

The connection will be created in an inactive state. Follow the google cloud guide <a href="https://cloud.google.com/sdk/gcloud/reference/compute/networks/peerings/create">here</a> , specify `–peer-network` and `–peer-projec`t with the account ID and VPC ID values from the dragonfly cloud private network you wish to connect. Observe the connection becomes active after a few moments

If you haven’t done so already, create a data store with a private endpoint.


39 changes: 39 additions & 0 deletions docs/cloud/quick-start.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
sidebar_position: 1
title: Quick Start
label: Cloud
---


## Getting Started with Dragonfly Cloud

A Dragonfly Cloud data store represents a Redis Protocol (RESP) endpoint. To create a data store, on the Data Store tab click +Data Store.

The minimum configuration consists of a name, cloud provider, cloud region and plan. Note that the cloud provider can not be modified once the data store is created.


![datastore](../../static/img/add-datastore.png)


The plan specifies the provisioned memory and memory to cpu ratio of the data store.

You can modify the data store plan later with zero down time to scale it up or down.

By default the data store will be configured with a public endpoint, TLS and an auto generated passkey, meaning you can securely connect to it from anywhere over the public internet.

To create a data store with a private endpoint, see [Security](cloud/data-stores/security), [Networks](cloud/networks) and [Peering Connections](cloud/peering).

By default the data store will consist of a single Dragonfly server, to create a highly available data store see [Durability and High Availability](cloud/data-stores/duarability-vs-high-availability)

Once the data store is created, clicking the data store row will open a drawer with the data store configuration, including the auto generated passkey and redis compatible connection string.


![edit datastore](../../static/img/edit-datastore.png)   




Once the data store Status becomes `Active` you can try access it with e.g. `redis-cli -u [connection string] PING`.

To update the data store configuration click the edit button in the top right of the drawer. Dragonfly cloud performs data store updates with zero downtime.

Binary file added static/img/add-datastore.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/add-network.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/backups.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/bullmq-sepcialization.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/create-datastore.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/create-networks.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/dashboard.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/datastore-edit.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/edit-datastore.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/networks.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/signup.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading