Error installing Airbyte in LXC container

Summary

The user is facing an error while trying to install Airbyte in an LXC container, specifically related to kubelet not running or being unhealthy. The user is unsure if kubectl needs to be installed on the local machine.


Question

<#C021JANJ6TY|> i m trying to install airbyte in an LXC container. I have followed the different steps, but it fails when running
abctl local install --low-resource-mode

With the following error

          [kubelet-check] It seems like the kubelet isn't running or healthy.
          [kubelet-check] The HTTP call equal to 'curl -sSL <http://localhost:10248/healthz>' failed with error: Get "<http://localhost:10248/healthz>": dial tcp [::1]:10248: connect: connection refused.
          
          Unfortunately, an error has occurred:
                timed out waiting for the condition
          
          This error is likely caused by:
                - The kubelet is not running
                - The kubelet is unhealthy due to a misconfiguration of the node in some way (required cgroups disabled)
          
          If you are on a systemd-powered system, you can try to troubleshoot the error with the following commands:
                - 'systemctl status kubelet'
                - 'journalctl -xeu kubelet'```
Do you need to install kubectl on your local machine?
It is not explained in the docs

<br>

---

This topic has been created from a Slack thread to give it more visibility.
It will be on Read-Only mode here. [Click here](https://airbytehq.slack.com/archives/C021JANJ6TY/p1728308069117139) if you want 
to access the original thread.

[Join the conversation on Slack](https://slack.airbyte.com)

<sub>
["install-airbyte", "lxc-container", "kubelet", "kubectl", "error"]
</sub>

You are on your own here.
abctl creates kind cluster (https://kind.sigs.k8s.io/) inside Docker container.
In the codebase there is no LXC related code https://github.com/airbytehq/abctl/tree/main/internal/cmd/local/docker, so I don’t think that this use case was even considered. Maybe old deprecated docker compose approach would work, or you need to experiment with creating k8s / kind cluster on LXC.

Out of curiosity, why LXC?

I run a small cluster with limited resources for my company. LXC allows me a better share of the resources are the linux kernel is shared in proxmox (so I can get more for my bucks - I know not really cash burning style of startup :slightly_smiling_face: )

Where should I start in the codebase to see what I can add for LXC?

I’d start from https://github.com/airbytehq/abctl/blob/6e6dfe45fc25d631d7b684f2fd887f17c07fcebf/internal/cmd/local/local_install.go|local_install.go file

Cheers.

Not sure how far can I go.
But to me splitting my ETL between airbyte and dagster seems more manageable that using http://mage.ai|mage.ai on the long run.