溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎樣在ansible-playbook中批量搭建LAMP

發(fā)布時(shí)間:2020-05-11 14:22:13 來源:億速云 閱讀:318 作者:Leah 欄目:系統(tǒng)運(yùn)維

怎樣在ansible-playbook中批量搭建LAMP?針對(duì)這個(gè)問題,今天小編總結(jié)了這篇文章,希望幫助更多想學(xué)習(xí)LAMP的同學(xué)找到更加簡(jiǎn)單易行的辦法。

先在ansible服務(wù)器安裝LAMP環(huán)境,然后再將配置文件通過ansible拷貝到遠(yuǎn)程主機(jī)

1.安裝httpd軟件
yum -y install httpd
2.安裝mysql
yum -y install mariadb-server mysql
systemctl start mairadb
3.安裝php 和php-mysql模塊
yum -y install php php-mysql
4.提供php測(cè)試頁
vim /var/www/html/index.php
<?php
        phpinfo();
?>
systemctl restart httpd

訪問ip:80 查看是否出現(xiàn)測(cè)試頁

怎樣在ansible-playbook中批量搭建LAMP

創(chuàng)建對(duì)應(yīng)的文件

mkdir -pv /etc/ansible/lamp/roles/{prepare,httpd,mysql,php}/{tasks,files,templates,vars,meta,default,handlers}

將搭建成功的LAMP環(huán)境的httpd和MySQL的配置文件拷貝到對(duì)應(yīng)目錄下

cd /etc/ansible/
cp /etc/httpd/conf/httpd.conf lamp/roles/httpd/files/
cp /etc/my.cnf lamp/roles/mysql/files/

寫prepare角色的playbooks    #前期準(zhǔn)備

vim lamp/roles/prepare/tasks/main.yml
- name: provide yumrepo file
  shell: rm -rf /etc/yum.repos.d/*.repo    #刪除原有yum配置文件
  shell: wget - o /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-repo    #下載新的yum配置文件
- name: clean the yum repo
  shell: yum clean all
- name: clean the iptables
  shell: systemctl stop firewalld    #關(guān)閉防火墻

構(gòu)建httpd任務(wù)

cp /var/www/html/index.php lamp/roles/httpd/files/
vim lamp/roles/httpd/tasks/main.yml
- name: web server install
  yum: name=httpd state=present    #安裝httpd服務(wù)
- name: provide test page
  copy: src=index.php dest=/var/www/html    #提供測(cè)試頁
  notify: restart httpd    #當(dāng)前面的copy執(zhí)行成功后,通過notify通知名字為restart httpd的handlers運(yùn)行
- name: restart httpd
  service: name=httpd enabled=yes state=restarted    #重啟httpd服務(wù)

部署mariadb數(shù)據(jù)庫

創(chuàng)建MySQL服務(wù)任務(wù),需要安裝mysql服務(wù),改變屬主屬性,啟動(dòng)mysql
vim lamp/roles/mysql/tasks/main.yml
- name: install the mysql
  yum: name=mariadb-server state=present    #安裝mysql服務(wù)
- name: mkdir date directory
  shell: mkdir -p /mydata/data    #創(chuàng)建掛載點(diǎn)目錄
- name: provide configration file
  copy: src=my.cnf dest=/etc/my.cnf    #拷貝mysql的配置文件
- name: chage the owner
  shell: chown -R mysql:mysql /mydata/*    #更改屬主和屬主
- name: start mariadb
  service: name=mariadb enabled=yes state=started    #啟動(dòng)mysql服務(wù)

構(gòu)建php任務(wù)

vim lamp/roles/php/tasks/main.yml
- name: install php
  yum: name=php state=present    #安裝php
- name: install php-mysql
  yum: name=php-mysql state=present    #安裝php與mysql交互插件

定義整個(gè)任務(wù)

 vim lamp/roles/site.yml
- name: LAMP build
  remote_user: root
  hosts: all
  roles:
    - prepare
    - mysql
    - php
    - httpd

執(zhí)行playbook

ansible-playbook -i /etc/ansible/hosts ./site.yml

怎樣在ansible-playbook中批量搭建LAMP

訪問192.168.1.129 查看是否有測(cè)試頁

怎樣在ansible-playbook中批量搭建LAMP

看完上訴內(nèi)容,你們掌握在ansible-playbook中批量搭建LAMP的方法了嗎?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI