• 售前

  • 售后

热门帖子
入门百科

ansible批量摆设tomcat的方法

[复制链接]
明功 显示全部楼层 发表于 2021-10-25 19:55:40 |阅读模式 打印 上一主题 下一主题
1.1 构建目次结构
此操作是安装nginx+mysql+tomcat+db的目次结构,可以参考一下,不错~
  1. mkdir -p /ansible/roles/{nginx,mysql,tomcat,db}/{defaults,files,handlers,meta,tasks,templates,vars}
复制代码
      
  • defaults 默认探求路径  
  • tasks 存放playbooks路径  
  • files 存放文件和脚本包,copy模块文件搜索路径  
  • templates 模版存放路径  
  • handlers notify调用部门playbook存放路径  
  • vars roles内变量存放路径
1.2 文件目次结构
  1. [root@qtbackup ~]# tree /ansible/
  2. /ansible/
  3. ├── playbook
  4. │  └── playbook.yml
  5. ├── roles
  6. │  ├── db
  7. │  │  ├── defaults
  8. │  │  ├── files
  9. │  │  ├── handlers
  10. │  │  ├── meta
  11. │  │  ├── tasks
  12. │  │  ├── templates
  13. │  │  └── vars
  14. │  ├── mysql
  15. │  │  ├── defaults
  16. │  │  ├── files
  17. │  │  ├── handlers
  18. │  │  ├── meta
  19. │  │  ├── tasks
  20. │  │  ├── templates
  21. │  │  └── vars
  22. │  ├── nginx
  23. │  │  ├── defaults
  24. │  │  ├── files
  25. │  │  ├── handlers
  26. │  │  ├── meta
  27. │  │  ├── tasks
  28. │  │  ├── templates
  29. │  │  └── vars
  30. │  └── tomcat
  31. │    ├── defaults
  32. │    ├── files
  33. │    │  ├── apache-tomcat-8.0.29.tar.gz
  34. │    │  ├── jdk-8u73-linux-x64.gz
  35. │    │  ├── tomcat-initscript.sh
  36. │    │  └── tomcat-users.xml
  37. │    ├── handlers
  38. │    │  └── main.yml
  39. │    ├── meta
  40. │    ├── tasks
  41. │    │  └── main.yml
  42. │    ├── templates
  43. │    │  └── tomcat-users.xml
  44. │    └── vars
  45. ├── ssh_key.sh    ###自动分发sshkey脚本 (下边会完整贴出来)
  46. ├── web.retry
  47. └── web.yml     ####总调用文件
  48. 34 directories, 11 files<br />[root@qtbackup ~]#
复制代码
1.3 在ansible目次创建一个总调用文件
  1. - hosts: bgo  ####这个是hosts定义个主机组名字,如果是单台主机可以直接写地址
  2. remote_user: root     ####执行用户
  3. roles:           #####解释配置文件目录,因为我们这次装的是tomcat所以注释其他的
  4. #  - nginx
  5. #  - mysql
  6.   - tomcat
  7. #  - db
复制代码
1.4 创建tomcat安装playbook文件
  1. vim  /ansible/roles/tomcat/tasks/main.yml
  2. #这个是用yum模块安装jdk,有需要的可以用
  3. #- name: install java
  4. # yum: name=java-1.8.0-openjdk.x86_64  state=present
  5. ===============================================================
  6. #创建用户
  7. - name: group
  8. group: name=tomcat
  9. - name: user
  10. user: name=tomcat group=tomcat home=/usr/tomcat
  11. sudo: True
  12. ##############################这个源码包安装JDK#############################
  13. #复制jdk到tmp目录下
  14. - name: copy jdk-8u73-linux-x64.gz
  15. copy: src=jdk-8u73-linux-x64.gz dest=/tmp/jdk-8u73-linux-x64.gz
  16. #解压jdk包到/application
  17. - name: Extract archive jdk
  18. command: /bin/tar xf /tmp/jdk-8u73-linux-x64.gz -C /application
  19. #改名
  20. - name: java
  21. shell: mv /application/jdk1.8.0_73 /application/java
  22. #添加环境变量
  23. - name: add /etc/profile
  24. lineinfile: dest=/etc/profile regexp="^JAVA_HOME=" line="JAVA_HOME=/application/java/"
  25. - name: add /etc/profile
  26. lineinfile: dest=/etc/profile regexp="^CLASS_PATH=" line="CLASS_PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib"
  27. - name: add /etc/profile
  28. lineinfile: dest=/etc/profile regexp="^PATH=\$PATH:\$JAVA_HOME" line="PATH=$PATH:$JAVA_HOME/bin"
  29. - name: add /etc/profile
  30. lineinfile : dest=/etc/profile regexp="^export JAVA_HOME" line="export JAVA_HOME"
  31. ##########################安装tomcat###########################################
  32. - name: copy tomcat_tar_gz
  33. copy: src=apache-tomcat-8.0.29.tar.gz dest=/tmp/apache-tomcat-8.0.29.tar.gz
  34. #解压tomcat到opt目录
  35. - name: Extract archive
  36. command: /bin/tar xf /tmp/apache-tomcat-8.0.29.tar.gz -C /opt
  37. #创建软连接
  38. - name: Symlink install directory
  39. file: src=/opt/apache-tomcat-8.0.29/ dest=/application/tomcat state=link
  40. #赋予目录权限
  41. - name: Change ownership of Tomcat installation
  42. file: path=/application/tomcat/ owner=tomcat group=tomcat state=directory recurse=yes
  43. #推送配置文件
  44. - name: Configure Tomcat users
  45. template: src=tomcat-users.xml dest=/application/tomcat/conf/
  46. notify: restart tomcat
  47. #安装tomcat。init启动脚本
  48. - name: Install Tomcat init script
  49. copy: src=tomcat-initscript.sh dest=/etc/init.d/tomcat mode=0755
  50. #开启tomcat
  51. - name: Start Tomcat
  52. service: name=tomcat state=started enabled=yes
复制代码
1.5 通过notify调用handlers
  1. - name: restart tomcat
  2. service: name=tomcat state=restarted
复制代码
1.6 语法检测===执行安装
  1. cd /ansible
  2. ansible-playbook web.yml --syntax-check #检查语法
  3. ansible-playbook web.yml #执行
复制代码
以上就是本文的全部内容,盼望对大家的学习有所资助,也盼望大家多多支持脚本之家。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作