network plugin for datumctl. The plugin manages networks, network services, and the network interfaces that Instances hold on your networks. It writes the same resources as the manifests on Configuration, and its describe output explains what’s wrong and who needs to act.
gVPC is in preview, and the
networking.datumapis.com/v1alpha API can change.Install the plugin
To install the plugin from the official Datum catalog, run the following command:datumctl network version works without a login, a project, or a network connection. For more information about plugins, see Using plugins.
Without the plugin, you can still list and delete networks with datumctl get networks and datumctl delete network NETWORK_NAME.
Manage networks
The following table describes the network commands:
A new network isn’t in any location. It reaches a location when a workload in that location attaches to it, so
describe shows no locations until you deploy a workload:
Delete a network
Before you delete a network, delete the workloads that are attached to it. To delete a network, run the following command:NETWORK_NAME with the name of the network. Before it asks you to confirm, the command lists the workloads that lose their network, the network services that stop serving, and the kept interfaces whose addresses are released.
If Instances still hold addresses on the network, the network stays in deletion and reports RangeOccupied until they’re gone.
Manage network services
Thedatumctl network service commands create, describe, change, and delete network services. For more information, see Network services.
Manage network interfaces
Each Instance holds a network interface on its workload’s network. To list the interfaces in your project, run the following command:--network, --workload, or --kept.
A workload with reclaimPolicy: Retain keeps an Instance’s addresses after the Instance is removed. The kept interface holds the addresses until an Instance with the same name returns. For more information, see Keep addresses after scale-down.
To release a kept interface and give up its addresses permanently, run the following command:
INTERFACE_NAME with the name of the kept interface. You can’t release an interface that a running Instance holds. After you release the addresses, update anything that refers to them, such as DNS records or firewall rules.
Find out what’s wrong
datumctl network describe and datumctl network service describe end with a diagnosis that names the cause, the location or workload that it affects, and who needs to act: you, Datum, or nobody while a change is still in progress.
Keep the following points in mind:
- A new network with no locations isn’t a fault. The network reaches a location when a workload there attaches to it.
- A network service with no ready Instances is a workload problem, not a network problem.
datumctl network service describelists the Instances that aren’t ready and what each one reports.
Scripts and automation
- Confirmation:
delete,update,service delete, andinterface releaseask you to type the resource’s name. Without a terminal, they stop unless you pass--yes. - Previews: Commands that change resources accept
--dry-run, which validates the change and discards it. - Output: Commands that read resources accept
-o table,-o wide,-o json,-o yaml, or-o name. - Exit codes: Failures print a named exit code, such as
exit status 4 # NETWORK_NOT_FOUND. The codes areNETWORK_USAGE(2),NETWORK_FORBIDDEN(3),NETWORK_NOT_FOUND(4),NETWORK_CONFLICT(5),NETWORK_INVALID(6),NETWORK_UNAVAILABLE(8), andNETWORK_ABORTED(9). - Waiting: If
create --waittimes out, the command exits with an error, but the network exists. Don’t runcreateagain; rundescribeinstead.
What’s next
- To create a network with a manifest and attach a workload, see Configuration.
- To give a workload a stable name for a load balancer, see Network services.
- To fix network errors, see Troubleshooting.