Capture CRD
Overview
The Capture
CustomResourceDefinition (CRD) defines a custom resource called Capture
, which represents the settings of a network trace.
This CRD allows users to specify the configurations for capturing network packets and storing the captured data.
To use the Capture
CRD, install Retina with capture support.
CRD Specification
The full specification for the Capture
CRD can be found in the Capture CRD file.
The Capture
CRD is defined with the following specifications:
- API Group: retina.sh
- API Version: v1alpha1
- Kind: Capture
- Plural: captures
- Singular: capture
- Scope: Namespaced
Fields
-
spec.captureConfiguration: Specifies the configuration for capturing network packets. It includes the following properties:
captureOption
: Lists options for the capture, such as duration, maximum capture size, and packet size.captureTarget
: Defines the target on which the network packets will be captured. It includes namespace, node, and pod selectors.filters
: Specifies filters for including or excluding network packets based on IP or port.includeMetadata
: Indicates whether networking metadata should be captured.tcpdumpFilter
: Allows specifying a raw tcpdump filter string.
-
spec.outputConfiguration: Indicates where the captured data will be stored. It includes the following properties:
blobUpload
: Specifies a secret containing the blob SAS URL for storing the capture data.hostPath
: Stores the capture files into the specified host filesystem.persistentVolumeClaim
: Mounts a PersistentVolumeClaim into the Pod to store capture files.s3Upload
: Specifies the configuration for uploading capture files to an S3-compatible storage service, including the bucket name, region, and optional custom endpoint.
-
status: Describes the status of the capture, including the number of active, failed, and completed jobs, completion time, conditions, and more. Check capture lifecycle for more details.