Skip to content

Conversation

@bfbarkhouse-redpanda
Copy link

We don't have much tooling to operate a fleet of self-managed Redpanda Connect nodes, so I created three simple Ansible playbooks to 1.) stage RPCN as a systemd service, 2.) update a pipeline config and restart the service and 3. )stop the service. I've included versions of each playbook for CE and Enterprise. The main difference with Enterprise is it allows you stage a redpanda.license file.

@CLAassistant
Copy link

CLAassistant commented Oct 9, 2025

CLA assistant check
All committers have signed the CLA.

Copy link
Contributor

@hcoyote hcoyote left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

overall, like the idea. This probably needs to go into redpanda-ansible-collection instead of here. Let's discuss with @gene-redpanda in slack.

Comment on lines 33 to 36
- name: Build download URL for rpk zip
set_fact:
rpk_zip_url: "https://github.com/redpanda-data/redpanda/releases/latest/download/rpk-linux-{{ rpk_arch }}.zip"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We've got deb/rpm packages for rpk, can we use those instead? This significantly simplifies deployment work and aligns with how we generally deploy on bare-os.

Comment on lines 38 to 52
# --- Ensure target directory exists before unarchive ---
- name: Ensure /opt exists
file:
path: /opt
state: directory
mode: "0755"

- name: Ensure target directory exists
file:
path: "{{ rpcn_dir }}"
state: directory
owner: root
group: root
mode: "0755"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This whole section would go away with the os packages for rpk I think

@@ -0,0 +1 @@
#Paste license key here
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We probably should follow the same license install pattern that's used in redpanda-ansible-collection

After=network.target

[Service]
ExecStart=/opt/rpcn/rpk connect run /opt/rpcn/pipeline.yaml
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be templated so you can run more than one rpcn pipeline per node?

After=network.target

[Service]
ExecStart=/opt/rpcn/rpk connect run /opt/rpcn/pipeline.yaml
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same comment here about templating to run more than one pipeline per node

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants