如何从pod内部的交互式外壳获取输出

2024-10-02 22:25:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用我的组织的一个sdk编写python脚本,并从kubernetes pod中提取一些有用的信息

我的sdk有一个podexec()函数,可用于在pod内执行命令

我有一个特定的用例,我必须在pod内部执行一个命令,inturn将启动一个交互式shell,然后在该交互式shell中,我想要执行一个命令并打印输出

例如,假设有一个mysql pod,我想先执行mysql pod,然后运行mysql命令,这将产生一个交互式mysql shell,在这里我想输入一些命令,比如“Show tables;”,然后在脚本中获得该命令的输出。可能吗

进入吊舱后,我可以运行一个命令,如下所示

kubectl exec -it mysql-pod -- bash

echo "show tables;" |mysql

现在,如何在不进入吊舱的情况下运行该程序

注意:我的用例实际上不是w.r.t mysql。我的组织有一个自定义工具,让我们在它的交互式shell中执行命令。这里的Mysql只是一个例子


Tags: 函数命令脚本信息tablesmysqlsdkshell