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

feat: Organization VPCs and org VPC peering #579

Open
wants to merge 39 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
51b66bd
vpc description draft
wojcik-dorota Nov 27, 2024
3f279de
vpc description draft
wojcik-dorota Nov 27, 2024
6837288
manage project vpc updates
wojcik-dorota Nov 28, 2024
c98571c
fix
wojcik-dorota Nov 28, 2024
e48a9f5
fixing links
wojcik-dorota Nov 28, 2024
d91a139
manage org vpcs
wojcik-dorota Dec 3, 2024
f88970c
manage org vpc via cli
wojcik-dorota Dec 6, 2024
b790c7f
fix
wojcik-dorota Dec 12, 2024
8dc978e
org vpc management via api
wojcik-dorota Dec 12, 2024
ee3d487
org vpc peering with aws
wojcik-dorota Dec 12, 2024
a8adae5
doc structure reorg
wojcik-dorota Dec 13, 2024
dc50406
fix
wojcik-dorota Dec 13, 2024
9fa092e
doc structure update:
wojcik-dorota Dec 13, 2024
5d762de
reuse research
wojcik-dorota Dec 19, 2024
ac9e6b5
fix
wojcik-dorota Dec 19, 2024
ad49c4a
fix
wojcik-dorota Dec 20, 2024
3914e97
more updates
wojcik-dorota Dec 20, 2024
0356fa9
manage pj vpc updates
wojcik-dorota Jan 7, 2025
1c1b19d
prerequisite for managing org networking
wojcik-dorota Jan 8, 2025
e162134
fixes to the project VPC peering docs
wojcik-dorota Jan 8, 2025
1d07957
google vpc peering for pj and org
wojcik-dorota Jan 8, 2025
f5938bc
upcloud peering
wojcik-dorota Jan 9, 2025
eda1d88
google peering fixes
wojcik-dorota Jan 13, 2025
525b59d
upcloud fixes
wojcik-dorota Jan 14, 2025
b56742c
aws peering fixes
wojcik-dorota Jan 15, 2025
556cff7
intro text for subsections
wojcik-dorota Jan 15, 2025
a4f3423
cli and api for peering instructions
wojcik-dorota Jan 16, 2025
06ecd24
azure pj vpc peering
wojcik-dorota Jan 20, 2025
6ae63c8
azure org vpc peering
wojcik-dorota Jan 24, 2025
a2fa6a1
fixes
wojcik-dorota Jan 24, 2025
16f1d11
delete peering
wojcik-dorota Jan 24, 2025
fe6c6db
delete vpc peering
wojcik-dorota Jan 27, 2025
5a11f6b
remove CLI for org VPC
wojcik-dorota Jan 27, 2025
5ae922a
gui copy adjustments
wojcik-dorota Jan 29, 2025
8be050e
hide azure org vpc peering
wojcik-dorota Jan 30, 2025
c6d7305
fix conflicts
wojcik-dorota Feb 3, 2025
11357f7
LA labels
wojcik-dorota Feb 3, 2025
d4ebe11
feedback
wojcik-dorota Feb 7, 2025
b51da6f
feedback
wojcik-dorota Feb 7, 2025
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
2 changes: 2 additions & 0 deletions .github/vale/styles/config/vocabularies/Aiven/accept.txt
Original file line number Diff line number Diff line change
Expand Up @@ -338,6 +338,8 @@ VMs
VNet
VPC/MS
VPCs?
VPN
VPNs
wget
Wireshark
Workbench
Expand Down
2 changes: 1 addition & 1 deletion docs/get-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ Add users to groups to streamline access management to your Aiven projects and s
Terraform Provider, CLI, and Kubernetes Operator."
/>
<Card
to="/docs/platform/howto/manage-vpc-peering"
to="/docs/platform/howto/manage-project-vpc"
iconName="clipboard"
title="Create a virtual private cloud"
description="Connect private networks with each other without going
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ you can connect to depend on the service type and deployment type. The
configuration can also affect the ports that are available:

- Is the service in a public network,
[dedicated VPC](/docs/platform/howto/manage-vpc-peering), virtual cloud account, or a
[dedicated VPC](/docs/platform/howto/manage-project-vpc), virtual cloud account, or a
[Bring Your Own Cloud (BYOC)](/docs/platform/concepts/byoc) setup?
- Have you configured IP ranges in `user_config.ip_filter`?
- Have you
Expand Down
2 changes: 1 addition & 1 deletion docs/platform/concepts/free-trial.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ also be used for paid features like virtual private cloud peering.
Trials include:

- Up to 10 VMs
- 1 [Virtual Private Cloud (VPC)](/docs/platform/howto/manage-vpc-peering)
- 1 [Virtual Private Cloud (VPC)](/docs/platform/howto/manage-project-vpc)
- Up to 10 VPC peering connections

If you create services on the [free plan](/docs/platform/concepts/free-plan), they will
Expand Down
2 changes: 2 additions & 0 deletions docs/platform/concepts/permissions.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@ and services within it.
| Manage domains | `organization:domains:write` | <ul> <li> Add, edit, and remove domains. </li> <li> View all organization domains. </li> </ul> |
| Manage groups | `organization:groups:write` | <ul> <li> Create, edit, and delete groups. </li> <li> Add organization and application users to groups. </li> <li> Remove organization and application users from groups. </li> </ul> |
| Manage projects | `organization:projects:write` | <ul> <li> Create and delete projects. </li> <li> Assign projects to billing groups. </li> <li> Add and remove project tags. </li> </ul> **Cannot otherwise access or move the project or its services.** |
| View organization networking | `organization:networking:read` | <ul> <li> Read all organization VPCs. </li> </ul> |
| Manage organization networking | `organization:networking:write` | <ul> <li> Add, edit, and remove organization VPCs. </li> <li> Create and manage VPC peering connections. </li> </ul> |
| Manage organization users | `organization:users:write` | <ul> <li> Invite new users to the organization. </li> <li> View all invited users. </li> <li> Remove user invites. </li> <li> Deactivate, edit and delete [managed users](/docs/platform/concepts/managed-users). </li> <li> Remove non-managed users from the organization. </li> <li> Reset passwords for managed users. </li> <li> View all authentication methods for an organization user. </li> <li> Revoke tokens for managed users. </li> <li> View all tokens generated by managed users. </li> </ul> |


Expand Down
82 changes: 82 additions & 0 deletions docs/platform/concepts/vpcs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
---
title: Virtual private clouds (VPCs) in Aiven
sidebar_label: VPCs overview
---

import LimitedBadge from "@site/src/components/non-swizzled/Badges/LimitedBadge";

Virtual private clouds (VPCs) supported on the Aiven Platform provide enhanced security, flexibility, and network control, allowing efficient traffic, resource, and access management.

A VPC is a logically isolated section of a cloud provider's network, which makes it a
private network within a public cloud. It's a secure customizable network environment that
you define and control to deploy and manage resources.

### VPC characteristics

- Isolation: Each VPC operates independently from other VPCs, ensuring secure separation.
- Security: Control over network traffic and isolation.
- Internet connectivity: Control whether the VPC connects to the internet via internet
gateways or remains isolated.
- Network control: Configure route tables, network gateways, and security settings.
- Customizable IP range: You can define your own IP address range (CIDR block).
- Subnets: Divide the VPC into smaller sub-networks (subnets) for organizing resources
based on availability zones or functional groups.
- Flexibility: Custom network architecture tailored to your application's needs.
- Scalability: Expand or modify the network as demand grows.

### VPC components

- Subnets: Represent smaller public or private networks within the VPC.
- [Peering connection](/docs/platform/howto/list-vpc-peering): Connect VPCs for
intercommunication.
- NAT (Network Address Translation) gateway: Allows outbound internet access for private
subnets.
- Internet gateway (IGW): Enables public traffic to access the internet.
- Security groups: Represent firewall rules controlling inbound and outbound traffic for
resources.
- Route tables: Specify how traffic is directed within the VPC.
- Network Access Control Lists (NACLs): Constitute an extra layer of security at the subnet
level

### VPC use cases

- Data isolation: Keeping sensitive data within a private network
- Hosting applications: Deploying scalable web and database applications
- Multi-tier architecture: Separating application layers (web, app, database) within
distinct subnets
- Hybrid cloud architecture: Connecting on-premises networks to the cloud securely

## VPC types

The Aiven Platform allows creating and using two types of VPCs, which differ in scope:
project-wide VPCs and organization-wide VPCs.

### Project VPCs

A project VPC is a VPC that spans a single Aiven project within your Aiven organization.
A project-wide VPC allows all resources in that project to interconnect and share a common
VPC network, simplifying network management and promoting consistency across your Aiven
project's services.

Learn how to
[create and manage projects VPCs in Aiven](/docs/platform/howto/manage-project-vpc).

### Organization VPCs <LimitedBadge/>

An organization VPC is a VPC that spans multiple Aiven projects within your Aiven
organization. An organization-wide VPC allows different projects to share a centralized
network infrastructure while maintaining isolation and control.

Learn how to
[create and manage organization VPCs in Aiven](/docs/platform/howto/manage-organization-vpc).

## Learn more

For information on VPCs supported by particular cloud providers, see the following:

- AWS: [How Amazon VPC works](https://docs.aws.amazon.com/vpc/latest/userguide/how-it-works.html])
- Google Cloud: [VPC networks](https://cloud.google.com/vpc/docs/vpc)
- Azure: [What is Azure Virtual Network?](https://learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-overview)
- UpCloud:
- [How to configure SDN Private networks](https://upcloud.com/docs/guides/configure-sdn-private-networks/)
- [How to configure SDN Private networks using the UpCloud API](https://upcloud.com/docs/guides/configure-sdn-private-networks-upcloud-api/)
Loading