当前位置: 首页 > news >正文

网站建设哪家便宜传媒网站

网站建设哪家便宜,传媒网站,真人做的免费视频网站,同一个地方做几个网站在日常的运维工作中,常常是一个人需要管理维护数个数十个数据库实例,如果是开源类集群如mysql,PG等可能更多;在没有商业的集中管理平台的情况下,如何快速的部署监控或者运维脚本,是一个值得探讨的问题&…

在日常的运维工作中,常常是一个人需要管理维护数个数十个数据库实例,如果是开源类集群如mysql,PG等可能更多;在没有商业的集中管理平台的情况下,如何快速的部署监控或者运维脚本,是一个值得探讨的问题,这里博主以一个简单的示例来演示如何快速一次性给20个实例部署运维脚本。

前面我发布了一个自动检查tablespace空间使用率,并再超过阈值时自动添加数据文件的脚本,具体参考链接如下:

Oracle自动处理表空间不足脚本-CSDN博客

更多的监控脚本可以参考如下:

oracle常用监控脚本(纯干货,没有EMCC,ZABBIX也不怕)_oracle 监控及日常处理脚本-CSDN博客

我这里就来演示如何一次性将这个脚本部署到全部20个数据库实例中

1. 选择一台集中部署服务器

这台部署服务器要和所有数据库实例网络通,ssh端口通,我这里选择了EMCC服务器,为了管理实例EMCC服务器已经和所有数据库实例打通了网络。如何部署EMCC可以参考如下文档
EMCC13.5安装配置手册(详细版)-CSDN博客

2. 配置互联互通

配置互联互通一般有两种方式,一种是类似Oracle11g RAC配置节点间免密登陆;我个人认为比较麻烦一下,但是配置好之后 后期会比较方便;我这里选择使用sshpass,

sshpass 是一个用于在命令行中非交互式提供 SSH 密码的工具,特别适合自动化脚本。它允许用户在 SSH、SCP 等命令中通过参数提供密码,从而省去手动输入的过程。

安装# Ubuntu/Debiansudo apt-get install sshpass# CentOS/RHELsudo yum install sshpass#ssh登陆格式sshpass -p "your_password" ssh user@hostname#ssh传输文件格式sshpass -p "your_password" scp localfile.txt user@hostname:/remote/path

3.配置需要部署的IP列表

#设置需要部署的ip list #格式为ip osuser password sshport10.xxx.xx.xxx oracle xxxxx 22

图片

4.初次部署需要手动scp一下

昨天实验时sshpass一直无法正常传输数据,但是sshpass没有报错,后来发现要先scp 接受一下

#首次部署需要scp接受RSA key,后面再次部署就可以使用sshpass了[oracle@orcoem01 jobs]$  scp  "/home/oracle/jobs/auto_add_dbf.sh" "oracle@10.xxx.xxx.xxx:/home/oracle/jobs/"The authenticity of host '10.219.40.231 (10.219.40.231)' can't be established.RSA key fingerprint is SHA256:RTS5x8jB3sOKNeKwN4jOH+iISwAZfgWf4WmJTT4rXc0.RSA key fingerprint is MD5:c0:06:94:bd:35:1b:f9:4c:b7:d7:10:0a:e7:22:f5:56.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '10.xxx.xxx.xxx' (RSA) to the list of known hosts.oracle@10.xxx.xxx.xxx'auto_add_dbf.sh

5.自动化部署脚本

这里自动化部署自动加tablespace数据库文件脚本,

[oracle@szsplorcoem01 jobs]$ cat deploy_auto_add_dbf.sh #!/bin/bash
# 配置文件路径CONFIG_FILE="list.txt"#需要部署的脚本,SCRIPT_FILE="auto_add_dbf.sh"#设置crontab 参数CRON_SCHEDULE="0 8 * * *"  # 每天早上8点00分执行一次
# 检查 list.txt 和 auto_add_dbf.sh 文件是否存在if [[ ! -f "$CONFIG_FILE" ]]; then    echo "配置文件 $CONFIG_FILE 不存在!"    exit 1fi
if [[ ! -f "$SCRIPT_FILE" ]]; then    echo "脚本文件 $SCRIPT_FILE 不存在!"    exit 1fi
# 将配置文件内容读入数组mapfile -t servers < "$CONFIG_FILE"
# 遍历数组中的每一行 抓取ip和用户信息等for server in "${servers[@]}"; do    # 解析 IP、用户名、密码和端口    IP=$(echo "$server" | awk '{print $1}')    USERNAME=$(echo "$server" | awk '{print $2}')    PASSWORD=$(echo "$server" | awk '{print $3}')    PORT=$(echo "$server" | awk '{print $4}')    PORT=${PORT:-22}  # 如果没有指定端口,则默认为22
    # 使用 sshpass 自动登录并执行命令    echo "连接到 $IP 并部署脚本..."
    # 复制脚本到远程主机 目标路径根据个人需要设定    sshpass -p "$PASSWORD" scp -P "$PORT" "$SCRIPT_FILE" "$USERNAME@$IP:/home/oracle/jobs"
    # 在远程主机上设置 cron 任务    sshpass -p "$PASSWORD" ssh -p "$PORT" "$USERNAME@$IP" "(crontab -l 2>/dev/null; echo \"$CRON_SCHEDULE /bin/bash /home/oracle/jobs/$SCRIPT_FILE\") | crontab -"
    echo "在 $IP 上成功部署并配置了自动任务。"
done

6.脚本执行结果
有部分IP 或者端口不通或者用户名密码不对 导致失败

图片

到目标主机检查部署情况
确认脚本文件被传输到目标主机

图片

确认crontab 已经正常添加,并确认脚本可以正常执行

批量化执行的脚本需要有普适性,也就是不需要修改脚本,这里auto_add_dbf.sh 通过抓取/home/oracle/.bash_profile来获取sid和oracle home信息等

图片

这里只是一个范例,如果脚本需要定制化修改,也可以通过抓取主机上的信息来自动修改脚本实现批量部署,希望能帮助到大家。

http://www.hkea.cn/news/645651/

相关文章:

  • 网站制作需要注意什么潍坊做网站哪家好
  • 专门做团购的网站有哪些色盲图
  • 百度做网站续费费用百度营业执照怎么办理
  • 深圳网站建设方维网络企业网站制作要求
  • 制作好网站黑帽seo教程
  • 云南 网站建设网站seo优化对网店的推广的作用为
  • 网站建设免费国外舆情服务公司
  • 怎么做网站banner查排名网站
  • 做网站好看的背景图片相关搜索优化软件
  • 怎么查网站是哪家制作公司做的百度收录查询
  • 企业年金交了有好处吗网络优化工程师吃香吗
  • python做网站开发百度6大核心部门
  • 自己做网站平台企业网站优化价格
  • 淘宝网网站建设的需求分析百度会员登录入口
  • 建网站的专业公司推广网站多少钱
  • 网站不去公安局备案自己怎么搭建网站
  • 外贸网站建设入门深圳网络推广哪家
  • 网站模板资源公司网站推广
  • 广东省建设教育协会官方网站首页html简单网页代码
  • 个人网站意义阿里指数官网最新版本
  • 网站开发方式有哪四种搜索引擎优化课程总结
  • 申请做网站、论坛版主app推广接单
  • 青海网站建设广州seo优化推广
  • 物流公司网站制作模板上海网站关键词排名
  • 广西建设人才网搜索引擎优化的目标
  • 比汉斯设计网站素材图片搜索识图入口
  • php网站架设教程英雄联盟韩国
  • 做毕设好的网站百度客服电话24小时
  • 上海手机网站建设电话咨询seo综合查询系统
  • wordpress 4.6 中文版沈阳seo