{"id":9884,"date":"2024-04-05T20:48:29","date_gmt":"2024-04-05T12:48:29","guid":{"rendered":"https:\/\/egonlin.com\/?p=9884"},"modified":"2024-04-05T20:48:29","modified_gmt":"2024-04-05T12:48:29","slug":"ansible-roles%e7%bb%83%e4%b9%a0","status":"publish","type":"post","link":"https:\/\/egonlin.com\/?p=9884","title":{"rendered":"ansible roles\u7ec3\u4e60"},"content":{"rendered":"<h3>1.\u914d\u7f6e\u4e3b\u673a\u6e05\u5355<\/h3>\n<pre><code>[root@m01 roles]# vim \/etc\/ansible\/hosts \n[lb_server]\nlb01 ansible_ssh_pass=&#039;1&#039;\nlb02 ansible_ssh_pass=&#039;1&#039;\n\n[web_group]\nweb01 ansible_ssh_pass=&#039;1&#039;\nweb02 ansible_ssh_pass=&#039;1&#039;\n\n[nfs_server]\nnfs ansible_ssh_pass=&#039;1&#039;\n\n[rsync_server]\nbackup ansible_ssh_pass=&#039;1&#039;\n\n[db_server]\ndb01 ansible_ssh_pass=&#039;1&#039;\n\n[nginx:children]\nweb_group\nlb_server<\/code><\/pre>\n<h3>2.\u914d\u7f6ehosts<\/h3>\n<pre><code>[root@m01 roles]# vim \/etc\/hosts\n10.0.0.4 lb01\n10.0.0.5 lb02\n10.0.0.7 web01\n10.0.0.8 web02\n10.0.0.31 nfs\n10.0.0.41 backup\n10.0.0.51 db01<\/code><\/pre>\n<h3>3.\u4f18\u5316\u90e8\u5206<\/h3>\n<pre><code>[root@m01 roles]# cat base\/tasks\/main.yml \n- hosts: all\n  tasks:\n    - name: Stop Firewalld\n      systemd:\n        name: firewalld\n        state: stopped\n        enabled: no\n\n    - name: Stop Selinux\n      selinux:\n        state: disabled\n\n    - name: Create www Group\n      group:\n        name: www\n        gid: 666\n        state: present\n      when: ansible_fqdn != &quot;db01&quot;\n\n    - name: Create www User\n      user:\n        name: www\n        uid: 666\n        group: www\n        shell: \/sbin\/nologin\n        create_home: false\n        state: present\n      when: ansible_fqdn != &quot;db01&quot;<\/code><\/pre>\n<h3>4.nginx\u90e8\u5206<\/h3>\n<h4>1\uff09\u51c6\u5907\u5305\u548c\u914d\u7f6e\u6587\u4ef6<\/h4>\n<pre><code>[root@m01 roles]# cd nginx\/files\/\n[root@m01 files]# ll\ntotal 772\n-rw-r--r-- 1 root root 784272 Dec 10 09:13 nginx-1.16.1-1.el7.ngx.x86_64.rpm\n-rw-r--r-- 1 root root    641 Dec 24 17:16 nginx.conf<\/code><\/pre>\n<h4>2\uff09\u5b89\u88c5nginx<\/h4>\n<pre><code class=\"language-bash\">[root@m01 roles]# vim nginx\/tasks\/main.yml \n- hosts: nginx\n  tasks:\n    - name: Push nginx rpm\n      copy:        src: nginx-1.16.1-1.el7.ngx.x86_64.rpm\n        dest: \/tmp\/\n\n    - name: Install Nginx Server\n      yum:\n        name: \/tmp\/nginx-1.16.1-1.el7.ngx.x86_64.rpm\n        state: present\n\n    - name: Config Nginx Server\n      copy:\n        src: nginx.conf\n        dest: \/etc\/nginx\/\n      notify: restart_nginx\n\n    - name: Start Nginx Server\n      systemd:\n        name: nginx\n        state: started<\/code><\/pre>\n<h4>3\uff09\u914d\u7f6e\u89e6\u53d1\u5668<\/h4>\n<pre><code class=\"language-bash\">[root@m01 roles]# vim nginx\/handlers\/main.yml \n- name: restart_nginx\n  systemd:\n    name: nginx\n    state: restarted<\/code><\/pre>\n<h3>5.php\u90e8\u5206<\/h3>\n<h4>1\uff09\u51c6\u5907\u914d\u7f6e\u6587\u4ef6<\/h4>\n<pre><code class=\"language-bash\">[root@m01 roles]# cd php\/files\/\n[root@m01 files]# ll\ntotal 19508\n-rw-r--r-- 1 root root    62646 Dec 21 11:04 php.ini\n-rw-r--r-- 1 root root 19889622 Nov 22 15:52 php.tar.gz\n-rw-r--r-- 1 root root    17962 Dec 22 15:10 www.conf<\/code><\/pre>\n<h4>2\uff09\u7f16\u5199\u5b89\u88c5PHP\u7684\u5267\u672c<\/h4>\n<pre><code class=\"language-bash\">[root@m01 roles]# vim php\/tasks\/main.yml\n- hosts: web_group\n  tasks:\n    - name: Tar php Package\n      unarchive:\n        src: php.tar.gz\n        dest: \/tmp\/\n\n    - name: Check php Install Status\n      shell: &quot;rpm -qa | grep php | wc -l&quot;\n      register: get_php_install_status\n      changed_when: false\n\n    - name: Install php Server\n      shell: &quot;yum localinstall -y \/tmp\/*.rpm&quot;\n      when: get_php_install_status.stdout_lines == 0\n\n    - name: Config php Server\n      copy:\n        src: &quot;{{ item.src }}&quot;\n        dest: &quot;{{ item.dest }}&quot;\n      with_items:\n        - { src: &quot;php.ini&quot;, dest: &quot;\/etc&quot; }\n        - { src: &quot;www.conf&quot;, dest: &quot;\/etc\/php-fpm.d\/&quot; }\n      notify: restart_php\n\n    - name: Start php Server\n      systemd:\n        name: php-fpm\n        state: started<\/code><\/pre>\n<h4>3\uff09\u914d\u7f6e\u89e6\u53d1\u5668<\/h4>\n<pre><code class=\"language-bash\">[root@m01 roles]# vim php\/handlers\/main.yml \n- name: restart_php\n  systemd:\n    name: php-fpm\n    state: restarted<\/code><\/pre>\n<h3>6.\u6570\u636e\u5e93\u90e8\u5206<\/h3>\n<p><\/p><div id=\"rml_readmorelogin_placeholder\" style=\"position:relative;\"><div id=\"rml_fade_content\" style=\"position: absolute;\r\ntop:-10em;\r\nwidth:100%;\r\nheight:10em;\r\nbackground: -webkit-linear-gradient(rgba(255, 255, 255, 0) 0%,#ffffff 100%);\r\nbackground-image: -moz-linear-gradient(rgba(255, 255, 255, 0) 0%,#ffffff 100%);\r\nbackground-image: -o-linear-gradient(rgba(255, 255, 255, 0) 0%,#ffffff 100%);\r\nbackground-image: linear-gradient(rgba(255, 255, 255, 0) 0%,#ffffff 100%);\r\nbackground-image: -ms-linear-gradient(rgba(255, 255, 255, 0) 0%,#ffffff 100%);\"><\/div><div class=\"wpf-controller aru_rml_from_in_post\" style=\"background-color:#eeeeee;border:5px solid #cce6ff;\" id=\"ARU_ReadMoreLogin_ReadMoreLoginController\"><h2 id=\"Header\">\u67e5\u770b\u66f4\u591a<\/h2><div id=\"Message\"><p>\u8054\u7cfb\u7ba1\u7406\u5458\u5fae\u4fe1tutu19192010\uff0c\u6ce8\u518c\u8d26\u53f7<\/p>\n<\/div><div id=\"StatusBarHeader\"><\/div><form id=\"ARU_ReadMoreLogin_ReadMoreLoginController\"><input name=\"post_id\" value=\"9884\" type=\"hidden\"\/><input name=\"_init_callback\" value=\"InitLogin\" type=\"hidden\"\/><input name=\"post_id\" value=\"9884\" type=\"hidden\"\/><input name=\"rt_ype\" value=\"1\" type=\"hidden\"\/><input name=\"nonce\" value=\"42332ad6e6\" type=\"hidden\"\/><input name=\"_wpnonce\" value=\"2a26d649a7\" type=\"hidden\"\/><input name=\"_controller\" value=\"ARU_ReadMoreLogin\\ReadMoreLoginController\" type=\"hidden\"\/><input name=\"_proxy_controller\" value=\"ARU_ReadMoreLogin\\ReadMoreLoginController\" type=\"hidden\"\/><input name=\"_view\" value=\"ARU_ReadMoreLogin\\ReadMoreLoginView\" type=\"hidden\"\/><table class=\"wpf-table-placeholder\"><tbody class=\"wpf-table-placeholder\"><tr class=\"wpf-table-placeholder\"><td class=\"wpf-table-placeholder-input\" width=\"400px\"><table class=\"wpf-table-placeholder\"><tbody class=\"wpf-table-placeholder\"><tr class=\"wpf-table-placeholder\"><th class=\"wpf-table-placeholder-input\"><label class=\"wpf-label\">Username:<\/label><\/th><\/tr><tr class=\"wpf-table-placeholder\"><td class=\"wpf-table-placeholder-input\"><input class=\"regular-text text_input\" name=\"username\" value=\"\" type=\"text\"\/><\/td><\/tr><tr class=\"wpf-table-placeholder\"><th class=\"wpf-table-placeholder-input\"><label class=\"wpf-label\">Password:<\/label><\/th><\/tr><tr class=\"wpf-table-placeholder\"><td class=\"wpf-table-placeholder-input\"><input class=\"regular-text text_input\" name=\"password\" value=\"\" type=\"password\"\/><\/td><\/tr><\/tbody><\/table><p class=\"wpf-table-placeholder submit\"><button class=\"wp_plugin_framework_ajax_button\" type=\"button\" style=\"background-color:#4D90FE;;color:#ffffff;;border:1px solid #3079ed;\" name=\"_event\" value=\"ButtonLogin\">Log in<\/button><\/p><\/td><td class=\"wpf-table-placeholder-input\"><\/td><\/tr><\/tbody><\/table><\/form><div id=\"ButtonStartRegister\"><a href=\"https:\/\/egonlin.com\/wp-login.php?action=register\">Register<\/a><\/div><div id=\"Link1\"><a href=\"https:\/\/egonlin.com\/wp-login.php?action=lostpassword\">Forgotten username or password?<\/a><\/div><div id=\"StatusBarFooter\"><\/div><\/div><\/div><div id=aru_remaining_content><\/div>","protected":false},"excerpt":{"rendered":"<p>1.\u914d\u7f6e\u4e3b\u673a\u6e05\u5355 [root@m01 roles]# vim \/etc\/ansible\/hosts [lb_s [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/egonlin.com\/index.php?rest_route=\/wp\/v2\/posts\/9884"}],"collection":[{"href":"https:\/\/egonlin.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/egonlin.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/egonlin.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/egonlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=9884"}],"version-history":[{"count":1,"href":"https:\/\/egonlin.com\/index.php?rest_route=\/wp\/v2\/posts\/9884\/revisions"}],"predecessor-version":[{"id":9885,"href":"https:\/\/egonlin.com\/index.php?rest_route=\/wp\/v2\/posts\/9884\/revisions\/9885"}],"wp:attachment":[{"href":"https:\/\/egonlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9884"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/egonlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=9884"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/egonlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=9884"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}