今天在公司使用LS调度系统(百度内部的工具),执行远程脚本的时候,每次都失败. 脚本内容比较简单,其实就是将HDFS(AFS)中的数据插入到Palo(Doris)数据库中,脚本如下: mysql -h xxx -P -uxxx -p'xxx' -e "LOAD LABEL baijiahao.bjh_spider_view_count_${day}_${label_time} (DATA INFILE('afs://xxx/user/feed-bjh/database/spider_view_c…
公司有上百台服务器,需要为每台服务器都执行一个脚本,因为所有服务器的账号密码都是一样的,所以可以不用搭建ansible等自动化运维工具,我们直接通过SSH远程执行即可完成. 本文以三台服务器为例,系统版本:CentOS7.31.安装sshpasscd /etc/yum.repos.d/wget http://download.openSUSE.org/repositories/home:Strahlex/CentOS_CentOS-6/home:Strahlex.repoyum install…
JSch远程执行脚本 2017-02-24 在自动化测试的时候,需要远程操控服务器做一些操作,比如切日.起服务器.执行某些脚本.如何实现? 我们可以利用JSch,远程执行脚本.JSch是Java Secure Channel的缩写,是一个SSH2功能的纯Java实现,具体信息可以参考JSch官网.它允许你连接到一个SSH服务器,并且可以使用端口转发,X11转发,文件传输等,同时你也可以集成它的功能到你自己的应用程序.在使用前,需要下载并导入JSch包:jsch-0.1.50.jar. 以下是实现…
假设 A (192.168.20.59)为客户机器,B(192.168.20.60)为目标机: 要达到的目的: A机器ssh登录B机器无需输入密码: 加密方式选 rsa|dsa均可以,默认dsa ssh-keygen -t rsa #使用rsa加密 二.具体操作流程 单向登陆的操作过程(能满足上边的目的): 1.登录A机器 2.ssh-keygen -t [rsa|dsa],将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub Generating…
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,centos上可直接yum安装 有提供UI(浏览器图形化)www.ansible.com/tower,收费的 官方文档 http://docs.ansible.com/ansible/latest/index.html ansible已经被redhat公司收购,它在github上是一个非常受欢迎的开源软…
ssh无密码登录及远程执行脚本要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS7为例. 测试环境:机器A(10.0.224.80):机器B(192.168.7.172).现想A通过ssh免密码在B上远程执行命令. 1.首先在A机下生成公钥/私钥对:(-P表示密码,-P '' 就表示空密码,一次回车即可.在~/.ssh会生成id_rsa和id_rsa.pub两个文件) [root@registry home]# ssh-keygen -t rsa -…
这几天在学习jenkins的持续集成和部署,到了最后一步启动服务的时候,遇到了一个这个Bad version number in .class file的报错(如下图). 这个报错在最开始手工部署的时候就遇到过,当时是jdk版本不对,安装对应版本的jdk后就解决了.这次用jenkins远程执行脚本,又报这个错,jdk的版本是正确的毫无疑问,而且手动启动时也可以启动,就是远程启动时报错.最后各种查,了解到jenkins在远程执行脚本时获取不到远程机子的环境变量导致的,要在构建的脚本第一句加上sou…
1. 先在服务端创建一个 shell 脚本 [root@localhost ~]$ cat /tmp/test.sh #!/bin/bash echo "hello world" 2. 把脚本分发到客户端 [root@localhost ~]$ ansible 192.168.119.134 -m copy -a "src=/tmp/test.sh dest=/tmp/test.sh mode=0755" 3. 远程执行脚本,使用 shell 模块 [root@lo…
ssh执行远程服务器脚本 提示php: command not found 设置环境变量 一台机器作为管理机,来管理其他服务器,并通过key认证,免密码登陆的. 在管理机上通过ssh登陆到其他服务器来远程执行命令 ssh root@IP "cmd" 执行远程服务器上的某个脚本,却报错,提示PHP:command not found 找不到php命令 远程机 which php  结果是/usr/local/php/bin/php echo $PATH 结果是  已经添加到PATH中了,…
之前在使用Jenkins执行远程shell脚本时,出现提示java: command not found:多方查找原因后发现是因为远程执行shell脚本时,不会自动加载环境变量,导致出现此错误,解决方案就是在脚本前加上这段代码即可source /etc/profile; source /etc/profile cd /root/shell sh erp-shop-h5-server.sh…