Eager to try out the Component Builder instead of reading about it?
Sign up for Conductor Free here and start using it now.
Introduction to Dapr
With over 100 components, Dapr supports connecting applications to major cloud services, SaaS offerings, on-premise software, and more. Dapr components simplify interactions with underlying infrastructure, offering developers an easy interface to integrate various services into their applications.
Dapr's core utility lies in abstracting the complexities of interacting with diverse infrastructure services. Once a component is configured using its YAML definition, applications can seamlessly access and utilize the component's capabilities by referring to its name. This abstraction not only streamlines development but also encapsulates intricate details like connection configurations, access controls, and component behaviors within the definition file.
Consider a typical PubSub component definition for Apache Kafka:
This YAML file illustrates configurations for client behavior, authentication mechanisms, and schema registry properties. These properties vary: some are mandatory, others optional; some are text fields, others numeric values. Additionally, properties may have default values or none at all. They can also be interdependent, such as SASL properties and schema registry properties, which are used together, or standalone properties. For Kafka alone, nearly 50 properties are available, reflecting the complexity involved. Navigating these configurations typically involves consulting the Dapr documentation and experimenting within a YAML editor to determine what works best. While Dapr components are powerful, the configuration process is cumbersome and error-prone, especially as the number of properties and their interdependencies increase.
Configure Dapr Components Faster with Conductor
At Diagrid, we decided to address this. Today, I’m excited to announce the Component Builder feature in Diagrid Conductor. The Component Builder provides an intuitive, step-by-step interface for configuring Dapr components. By following the guided steps, you can configure your component and have the Component Builder generate the required YAML file. Watch this 2-minute video for a quick overview.
To configure a component, select the type of component you want to configure, such as Pubsub, State, Binding, Secretstore, Middleware, and the concrete implementation like Apache Kafka or another among the 50+ components available today. Depending on your selection, you will be offered available authentication profiles such as OIDC, mTLS, SASL, and others. Then you can configure any required and optional settings specific to the component. Below, we will configure PubSub component options for Apache Kafka.
On the Assign Access screen, you can scope this component to a specific namespace and apps. Conductor assists by letting you browse the connected Dapr clusters to see namespaces and apps. Here, I will set the namespace and scope it to these two apps only. In the final screen, you can see the generated YAML file and make manual changes if necessary. Once satisfied, download the YAML and use it locally or commit it to your source control system. Conductor can validate this generated component definition through its component-initialization check feature by connecting to the backing infrastructure service, but that is a topic for another post.
This is our first release of the Component Builder, and there might be some rough edges. We will continue to improve this feature in the coming days. Sign up for Conductor today (it’s free) and start configuring Dapr components faster with the Component Builder. Try it out and let us know what works and what doesn't.