Summary
The user is encountering an error while trying to install Airbyte locally using abctl on a Debian VM. The error message indicates a problem with the readiness probe failing due to a context deadline exceeded.
Question
Hey guys, i am trying to run airbyte through abctl on a debian vm and i get this error code all time:
root@airbyte:~/airbyte# abctl local install
INFO Using Kubernetes provider:
Provider: kind
Kubeconfig: /root/.airbyte/abctl/abctl.kubeconfig
Context: kind-airbyte-abctl
SUCCESS Found Docker installation: version 27.3.1
SUCCESS Existing cluster ‘airbyte-abctl’ found
SUCCESS Cluster ‘airbyte-abctl’ validation complete
INFO Namespace ‘airbyte-abctl’ already exists
INFO Persistent volume ‘airbyte-minio-pv’ already exists
INFO Persistent volume ‘airbyte-volume-db’ already exists
INFO Persistent volume claim ‘airbyte-minio-pv-claim-airbyte-minio-0’ already exists
INFO Persistent volume claim ‘airbyte-volume-db-airbyte-db-0’ already exists
INFO Starting Helm Chart installation of ‘airbyte/airbyte’ (version: 0.634.3)
WARNING Encountered an issue deploying Airbyte:
Pod: airbyte-abctl-webapp-86d94c8fd-47bcl.17f7d895410ede2c
Reason: Unhealthy
Message: Readiness probe failed: Get “http://10.244.0.10:8080/index.html”: context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Count: 8
ERROR Failed to install airbyte/airbyte Helm Chart
ERROR Unable to install Airbyte locally
ERROR unable to install airbyte chart:
pod airbyte-abctl-airbyte-bootloader: unknown
This topic has been created from a Slack thread to give it more visibility.
It will be on Read-Only mode here. Click here if you want
to access the original thread.
Join the conversation on Slack
["airbyte", "abctl", "debian-vm", "error", "readiness-probe", "helm-chart"]
install kind https://kind.sigs.k8s.io/docs/user/quick-start/#installation and check logs
kind export logs --name=airbyte-abctl kind-logs
in kind-logs
directory you will find all the logs, check for error, exception and so on
Yes, i can see this in the airbyte-abctl-cron-xyz.log file:
2024-09-23T10:58:23.357439823Z stdout F at io.grpc.stub.ClientCalls.toStatusRuntimeException(ClientCalls.java:268) ~[grpc-stub-1.66.0.jar:1.66.0]
2024-09-23T10:58:23.357445043Z stdout F at io.grpc.stub.ClientCalls.getUnchecked(ClientCalls.java:249) ~[grpc-stub-1.66.0.jar:1.66.0]
2024-09-23T10:58:23.357449812Z stdout F at io.grpc.stub.ClientCalls.blockingUnaryCall(ClientCalls.java:167) ~[grpc-stub-1.66.0.jar:1.66.0]
2024-09-23T10:58:23.357455182Z stdout F at io.temporal.api.workflowservice.v1.WorkflowServiceGrpc$WorkflowServiceBlockingStub.listClosedWorkflowExecutions(WorkflowServiceGrpc.java:4171) ~[temporal-serviceclient-1.22.3.jar:?]
2024-09-23T10:58:23.357461053Z stdout F at io.airbyte.commons.temporal.WorkflowServiceStubsWrapped.lambda$blockingStubListClosedWorkflowExecutions$0(WorkflowServiceStubsWrapped.java:47) ~[io.airbyte-airbyte-commons-temporal-core-0.64.7.jar:?]
2024-09-23T10:58:23.357465641Z stdout F at dev.failsafe.Functions.lambda$toCtxSupplier$11(Functions.java:243) ~[failsafe-3.3.2.jar:3.3.2]
2024-09-23T10:58:23.357469919Z stdout F at dev.failsafe.Functions.lambda$get$0(Functions.java:46) ~[failsafe-3.3.2.jar:3.3.2]
2024-09-23T10:58:23.357474558Z stdout F at dev.failsafe.internal.RetryPolicyExecutor.lambda$apply$0(RetryPolicyExecutor.java:74) ~[failsafe-3.3.2.jar:3.3.2]
2024-09-23T10:58:23.357478666Z stdout F at dev.failsafe.SyncExecutionImpl.executeSync(SyncExecutionImpl.java:187) ~[failsafe-3.3.2.jar:3.3.2]
2024-09-23T10:58:23.357482894Z stdout F at dev.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:376) ~[failsafe-3.3.2.jar:3.3.2]
2024-09-23T10:58:23.357487162Z stdout F at dev.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:112) ~[failsafe-3.3.2.jar:3.3.2]
2024-09-23T10:58:23.357492502Z stdout F at io.airbyte.commons.temporal.RetryHelper.withRetries(RetryHelper.java:60) ~[io.airbyte-airbyte-commons-temporal-core-0.64.7.jar:?]
2024-09-23T10:58:23.357497952Z stdout F at io.airbyte.commons.temporal.WorkflowServiceStubsWrapped.withRetries(WorkflowServiceStubsWrapped.java:67) ~[io.airbyte-airbyte-commons-temporal-core-0.64.7.jar:?]
2024-09-23T10:58:23.357502461Z stdout F at io.airbyte.commons.temporal.WorkflowServiceStubsWrapped.blockingStubListClosedWorkflowExecutions(WorkflowServiceStubsWrapped.java:47) ~[io.airbyte-airbyte-commons-temporal-core-0.64.7.jar:?]
2024-09-23T10:58:23.357521366Z stdout F at io.airbyte.commons.temporal.TemporalClient.fetchClosedWorkflowsByStatus(TemporalClient.java:139) ~[io.airbyte-airbyte-commons-temporal-0.64.7.jar:?]
2024-09-23T10:58:23.357526977Z stdout F at io.airbyte.commons.temporal.TemporalClient.restartClosedWorkflowByStatus(TemporalClient.java:117) ~[io.airbyte-airbyte-commons-temporal-0.64.7.jar:?]
2024-09-23T10:58:23.357531705Z stdout F at io.airbyte.cron.jobs.SelfHealTemporalWorkflows.cleanTemporal(SelfHealTemporalWorkflows.java:42) ~[io.airbyte-airbyte-cron-0.64.7.jar:?]
2024-09-23T10:58:23.357536004Z stdout F at io.airbyte.cron.jobs.$SelfHealTemporalWorkflows$Definition$Exec.dispatch(Unknown Source) ~[io.airbyte-airbyte-cron-0.64.7.jar:?]
2024-09-23T10:58:23.357540622Z stdout F at io.micronaut.context.AbstractExecutableMethodsDefinition$DispatchedExecutableMethod.invoke(AbstractExecutableMethodsDefinition.java:456) ~[micronaut-inject-4.6.5.jar:4.6.5]
2024-09-23T10:58:23.357545161Z stdout F at io.micronaut.inject.DelegatingExecutableMethod.invoke(DelegatingExecutableMethod.java:86) ~[micronaut-inject-4.6.5.jar:4.6.5]
2024-09-23T10:58:23.357549709Z stdout F at io.micronaut.context.bind.DefaultExecutableBeanContextBinder$ContextBoundExecutable.invoke(DefaultExecutableBeanContextBinder.java:152) ~[micronaut-inject-4.6.5.jar:4.6.5]
2024-09-23T10:58:23.357554348Z stdout F at io.micronaut.scheduling.processor.ScheduledMethodProcessor.lambda$scheduleTask$2(ScheduledMethodProcessor.java:160) ~[micronaut-context-4.6.5.jar:4.6.5]
2024-09-23T10:58:23.357559027Z stdout F at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) ~[?:?]
2024-09-23T10:58:23.357563505Z stdout F at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:358) ~[?:?]
2024-09-23T10:58:23.357568034Z stdout F at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) ~[?:?]
2024-09-23T10:58:23.357572642Z stdout F at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
2024-09-23T10:58:23.357602148Z stdout F at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
2024-09-23T10:58:23.35760857Z stdout F at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]```
is looks like temporal issue not cron
So what am i supposed to do?
I need more debug information. Can you install some tools and send screenshot when running k9s
?
Install kubectl (https://kubernetes.io/docs/tasks/tools/#kubectl) and kubectx + kubens (https://github.com/ahmetb/kubectx) and k9s (https://k9scli.io/)
then execute commands:
KUBECONFIG=~/.airbyte/abctl/abctl.kubeconfig kubectl config view --flatten > ~/.kube/config
kubectx kind-airbyte-abctl
kubens airbyte-abctl
k9s```
root@airbyte:~/airbyte/kind-logs/airbyte-abctl-control-plane# view --flatten > ~/.kube/config
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled May 04 2023 10:24:44)
Unknown option argument: “–flatten”
More info with: “vim -h”
root@airbyte:~/airbyte/kind-logs/airbyte-abctl-control-plane# kubectx kind-airbyte-abctl
error: no context exists with the name: “kind-airbyte-abctl”
root@airbyte:~/airbyte/kind-logs/airbyte-abctl-control-plane# kubens airbyte-abctl
error: current-context is not set
error getting current context
Also, cant install k9s on debian
according to the install documenation it needs pacman or brew
root@airbyte:~# KUBECONFIG=~/.airbyte/abctl/abctl.kubeconfig kubectl config
Modify kubeconfig files using subcommands like “kubectl config set current-context my-context”.
The loading order follows these rules:
- If the --kubeconfig flag is set, then only that file is loaded. The flag may only be set once and no merging takes
place.
- If $KUBECONFIG environment variable is set, then it is used as a list of paths (normal path delimiting rules for
your system). These paths are merged. When a value is modified, it is modified in the file that defines the stanza. When
a value is created, it is created in the first file that exists. If no files in the chain exist, then it creates the
last file in the list.
- Otherwise, ${HOME}/.kube/config is used and no merging takes place.
Available Commands:
current-context Display the current-context
delete-cluster Delete the specified cluster from the kubeconfig
delete-context Delete the specified context from the kubeconfig
delete-user Delete the specified user from the kubeconfig
get-clusters Display clusters defined in the kubeconfig
get-contexts Describe one or many contexts
get-users Display users defined in the kubeconfig
rename-context Rename a context from the kubeconfig file
set Set an individual value in a kubeconfig file
set-cluster Set a cluster entry in kubeconfig
set-context Set a context entry in kubeconfig
set-credentials Set a user entry in kubeconfig
unset Unset an individual value in a kubeconfig file
use-context Set the current-context in a kubeconfig file
view Display merged kubeconfig settings or a specified kubeconfig file
Usage:
kubectl config SUBCOMMAND [options]
Use “kubectl config <command> --help” for more information about a given command.
Use “kubectl options” for a list of global command-line options (applies to all commands).
can you repeat KUBECONFIG=~/.airbyte/abctl/abctl.kubeconfig kubectl config view --flatten > ~/.kube/config
?
I’m not sure if some extra character were copied from Slack, because of weird error with vim
Ok, those commands worked now (atleast no output), but the command after didnt:
root@airbyte:~# kubectx kind-airbyte-abctl
error: no context exists with the name: “kind-airbyte-abctl”
root@airbyte:~#
you can download k9s binary or deb package from https://github.com/derailed/k9s/releases
if you expand “Show all 42 assets”, then you should see deb packages
do you get any list of entries if you run kubectx
without any options?
Do ~/.airbyte
directory and ~/.airbyte/abctl/abctl.kubeconfig
file exist on that machine?
When you run abctl
they should be created
or maybe use full path
KUBECONFIG=/root/.airbyte/abctl/abctl.kubeconfig kubectl config view --flatten > ~/.kube/config
root@airbyte:~# kubectx
root@airbyte:~#
No output
maybe even simpler, just copy file
cp ~/.airbyte/abctl/abctl.kubeconfig ~/.kube/config