liveBook · Manning

CRD object

As explained in Designing Deep Learning Systems: A guide for software engineers

A custom resource instance representing a training job and exposing its desired and current state through the Kubernetes API.

A CRD object is a Kubernetes API resource that represents a concrete training job or workflow. It exposes the requested configuration and the operation’s current status, making it both an execution gateway and a state record. section 3.4.5 section 9.3.2

In a production system, a CRD object can serve several operational roles:

  • Accept training requests through create, read, update, and delete operations. section 3.4.5
  • Provide the source of truth for training status while a wrapper service presents a system-specific interface. section 3.4.5
  • Represent an Argo workflow definition and its steps, which the controller realizes as Kubernetes pods. section 9.3.2
  • Isolate workflow steps through separate containers and pods, passing inputs and outputs through files. section 9.3.2

Training backend wrapper

A web service can leave an existing front end unchanged, queue jobs, translate incoming training requests into operator CRD objects, and read those objects to report status. This lets an existing deep-learning platform use Kubernetes training operators as its computation backend. section 3.4.5

Figure 3.13 Integrating Kubeflow training operators into an existing deep learning system as training backend. The wrapper service can transform training requests to CRD objects and fetch the training status from the CRD objects.

Use the integration diagram to trace request conversion, queue management, CRD submission, and status retrieval between an existing system and Kubernetes training operators. section 3.4.5

How Designing Deep Learning Systems: A guide for software engineers covers it

How deep it goes
Explains CRUD integration, status queries, controller-created resources, and pod execution, but not CRD schema design.
Examples
Uses training-job resources, Argo workflow YAML, data-processing steps, and kubectl or Argo inspection commands.
What it assumes
Assumes Kubernetes familiarity for direct operation, while wrapper services can hide CRD details from existing front ends.
What you can do after
Operate training and workflow executions through CRD resources, wrapper APIs, Argo commands, or standard Kubernetes CLI commands.
How it connects
Connects Kubernetes API, custom resource definitions, training operators, workflow orchestration, wrapper services, and Kubernetes pods.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Designing Deep Learning Systems: A guide for software engineers. The section links point to the parts of the book it draws on.