Organizations
Organizations are the top-level resource hierarchy in Datum Cloud. They provide isolated workspaces for teams and individuals, with built-in RBAC, quota management, and membership controls.Overview
Every user in Datum Cloud has at least one organization:- Personal Organization: Automatically created for each user
- Standard Organizations: Created for teams and companies
- Projects: Isolated workspaces for resources
- Members: Users with assigned roles
- Quotas: Resource limits and allocations
- Resources: Networks, Workloads, Gateways, etc.
Organization Types
Datum supports two types of organizations:- Personal
- Standard
Personal Organizations are automatically created when a user signs up.Characteristics:
- One per user
- Cannot be deleted (tied to user lifecycle)
- Display name cannot be changed
- Maximum 2 projects
- Single owner (the user)
Personal organizations are created automatically by the Personal Organization Controller at
internal/controller/resourcemanager/personal_organization_controller.go:60.Creating Organizations
Via kubectl
Via Datum Cloud Dashboard
Fill in details
- Name: URL-friendly identifier (cannot be changed)
- Display name: Human-readable name
- Description: Optional description
Organization Membership
OrganizationMembership resources grant users access to organizations with specific roles.
Structure
Adding Members
Available Roles
Datum provides three built-in roles for organization members:Owner
Full access to all resources
- Create/delete projects
- Manage members
- Configure quotas
- Delete organization
config/assignable-organization-roles/roles/datum-cloud-owner.yaml:1Editor
Read-write access to resources
- Create/update/delete workloads
- Manage networks
- Configure gateways
- Cannot manage members
Viewer
Read-only access to resources
- View all resources
- Cannot create or modify
- Useful for auditors
Removing Members
Managing Organizations
List Organizations
View Organization Details
Update Organization
Delete Organization
Organization Namespaces
Each organization gets a dedicated Kubernetes namespace:- Organization
my-company→ Namespaceorganization-my-company - Organization
personal-org-a1b2c3d4→ Namespaceorganization-personal-org-a1b2c3d4
- OrganizationMemberships
- ResourceGrants (quota allocations)
- ResourceClaims (quota usage)
- Organization-scoped policies
Quota Management
Organizations have resource quotas enforced automatically.Default Quotas
Fromconfig/services/resourcemanager.miloapis.com/quota/grant-policies/:
- Personal Organization
- Standard Organization
Max 2 projects
View Quota Usage
Quota Enforcement
Quotas are enforced viaClaimCreationPolicy. From config/services/resourcemanager.miloapis.com/quota/claim-policies/claim-creation-policy.yaml:1:
ResourceClaim is automatically created. If the organization has reached its quota limit, the claim (and thus the project creation) will fail.
Best Practices
Use Standard orgs for teams
Create Standard organizations for teams, even if you’re the only member initially.
Principle of least privilege
Assign the minimum role necessary. Use Viewer for read-only access.
Document with annotations
Use annotations for descriptions, cost centers, or team contacts.
Monitor quota usage
Regularly check quota usage to avoid hitting limits.
Audit memberships
Regularly review organization members and remove inactive users.
Use multiple orgs
Separate production and non-production environments into different organizations.
Troubleshooting
Cannot create project (quota exceeded)
Member cannot access resources
Personal organization issues
Next Steps
Projects
Learn about projects and resource organization
Quota Management
Deep dive into quota policies and management
Security
RBAC and security best practices
Managing Resources
kubectl commands for organizations