如何在Kubernetes中使用Cron Job运行具有ssh命令的Shell脚本

因桑杰

我想使用kubernetes中的cron job运行在文件中包含ssh命令的shell脚本

test.sh

#!/bin/bash

echo copying files from edge node to batch pods;
ssh -q userid@<hostname>"kubectl config use-context testnamespace";
ssh -q userid@<hostname>"kubectl scale statefulsets testpod --replicas=1";

当我通过pod手动执行它时,它会抛出错误"ssh command not found"并触发作业向我抛出permission denied消息。

谁能帮助我解决这个问题。

沃特尼

此消息(ssh command not found)表示您的Pod中缺少ssh客户端。在评论中,您提到的是docker,所以我假设您正在使用docker映像。

要将SSH安装到您的Docker容器中,您必须根据我们的Linux发行版运行apt-get或yum或任何其他软件包管理器,并且这需要在您的Dockerfile中表达。

这是如何实现此目的的示例:

# A basic apache server. To use either add or bind mount content under /var/www

FROM ubuntu:12.04

MAINTAINER Kimbro Staken version: 0.1

RUN apt-get update && apt-get install -y apache2 && apt-get clean && rm -rf /var/lib/apt/lists/*

ENV APACHE_RUN_USER www-data

ENV APACHE_RUN_GROUP www-data

ENV APACHE_LOG_DIR /var/log/apache2

EXPOSE 80

CMD ["/usr/sbin/apache2", "-D", "FOREGROUND"]

在此示例中,我们在ubuntu映像上安装apache。在您的方案中,您需要运行类似于以下内容的代码:

RUN apt-get update && apt-get install -y openssh-client && apt-get clean && rm -rf /var/lib/apt/lists/*

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Shell脚本程序中运行具有自己的命令行的程序

来自分类Dev

使用本地环境变量在具有SSH的远程计算机上运行Shell脚本

来自分类Dev

如何在zendframework 2中使用cron job?

来自分类Dev

如何在kubernetes中使用参数运行docker运行映像

来自分类Dev

如何在Kubernetes部署中使用DockerOperator运行Tasks?

来自分类Dev

如何在 Kubernetes 中使用 postgres 运行 Pact Broker?

来自分类Dev

如何在mv命令中使用shell脚本变量

来自分类Dev

如何在Shell脚本中使用vi命令?

来自分类Dev

如何在mv命令中使用shell脚本变量

来自分类Dev

如何在Shell脚本中使用setarch uname命令

来自分类Dev

如何在Shell脚本中使用vi命令?

来自分类Dev

如何在shell脚本中使用source命令?

来自分类Dev

如何在 shell 脚本中使用 `time` 命令?

来自分类Dev

如何在Jenkins中使用Execute Shell命令传递可能具有不同名称的文件

来自分类Dev

如何在java中使用Quartz Cron表达式从db运行任务?

来自分类Dev

如何验证要由Shell脚本运行的命令

来自分类Dev

无法使用SSH运行Shell脚本

来自分类Dev

如何在Shell脚本中使用if else

来自分类Dev

如何在Shell脚本中使用else?

来自分类Dev

如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

来自分类Dev

如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

来自分类Dev

如何在shell脚本中使用grep在while循环中使用命令否定?

来自分类Dev

使用子进程调用Shell脚本不会在Shell脚本中运行所有命令

来自分类Dev

如何使用具有特权提升的grunt-shell运行命令?

来自分类Dev

如何使用具有特权提升的grunt-shell运行命令?

来自分类Dev

如何在Kubernetes中使用HTTPS在本地运行asp.net核心

来自分类Dev

我应该如何运行具有永久循环的cron命令?

来自分类Dev

如何在 Laravel 5.7 中使用 Cron Job 将经纬度从邮政编码更新到数据库

来自分类Dev

Emacs组织模式-如何在不挂起Emacs的情况下运行具有后台进程的Shell脚本

Related 相关文章

  1. 1

    如何在Shell脚本程序中运行具有自己的命令行的程序

  2. 2

    使用本地环境变量在具有SSH的远程计算机上运行Shell脚本

  3. 3

    如何在zendframework 2中使用cron job?

  4. 4

    如何在kubernetes中使用参数运行docker运行映像

  5. 5

    如何在Kubernetes部署中使用DockerOperator运行Tasks?

  6. 6

    如何在 Kubernetes 中使用 postgres 运行 Pact Broker?

  7. 7

    如何在mv命令中使用shell脚本变量

  8. 8

    如何在Shell脚本中使用vi命令?

  9. 9

    如何在mv命令中使用shell脚本变量

  10. 10

    如何在Shell脚本中使用setarch uname命令

  11. 11

    如何在Shell脚本中使用vi命令?

  12. 12

    如何在shell脚本中使用source命令?

  13. 13

    如何在 shell 脚本中使用 `time` 命令?

  14. 14

    如何在Jenkins中使用Execute Shell命令传递可能具有不同名称的文件

  15. 15

    如何在java中使用Quartz Cron表达式从db运行任务?

  16. 16

    如何验证要由Shell脚本运行的命令

  17. 17

    无法使用SSH运行Shell脚本

  18. 18

    如何在Shell脚本中使用if else

  19. 19

    如何在Shell脚本中使用else?

  20. 20

    如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

  21. 21

    如何在一台机器上通过带有资源(.txt文件)的ssh在ssh上运行Shell脚本?

  22. 22

    如何在shell脚本中使用grep在while循环中使用命令否定?

  23. 23

    使用子进程调用Shell脚本不会在Shell脚本中运行所有命令

  24. 24

    如何使用具有特权提升的grunt-shell运行命令?

  25. 25

    如何使用具有特权提升的grunt-shell运行命令?

  26. 26

    如何在Kubernetes中使用HTTPS在本地运行asp.net核心

  27. 27

    我应该如何运行具有永久循环的cron命令?

  28. 28

    如何在 Laravel 5.7 中使用 Cron Job 将经纬度从邮政编码更新到数据库

  29. 29

    Emacs组织模式-如何在不挂起Emacs的情况下运行具有后台进程的Shell脚本

热门标签

归档