国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

網(wǎng)頁(yè)三劍客的網(wǎng)頁(yè)制作軟件是seo資料站

網(wǎng)頁(yè)三劍客的網(wǎng)頁(yè)制作軟件是,seo資料站,網(wǎng)站域名備案查詢系統(tǒng),app免費(fèi)制作平臺(tái)生成語(yǔ)法以及實(shí)際案例 平時(shí)我們?cè)谶M(jìn)行日志收集的時(shí)候,往往會(huì)在每臺(tái)機(jī)器上安裝filebeat,并且由于每臺(tái)機(jī)器運(yùn)行服務(wù)的不同,那么收集日志的配置文件也是不一樣的,如何快速高效的部署filebeat以及擁有不同的配置文件就是我們要思考的問題&…

語(yǔ)法以及實(shí)際案例

平時(shí)我們?cè)谶M(jìn)行日志收集的時(shí)候,往往會(huì)在每臺(tái)機(jī)器上安裝filebeat,并且由于每臺(tái)機(jī)器運(yùn)行服務(wù)的不同,那么收集日志的配置文件也是不一樣的,如何快速高效的部署filebeat以及擁有不同的配置文件就是我們要思考的問題,當(dāng)然不可能一臺(tái)機(jī)器一臺(tái)機(jī)器的修改配置文件。

接下來(lái)我將會(huì)以一個(gè)我自己寫的filebeat相關(guān)的role舉例,來(lái)分析role模式涉及的一些規(guī)范以及如何寫一個(gè)好的任務(wù)編排, 案例中的filebeat的role模式擁有對(duì)filebeat的安裝,更新配置的功能。

role其實(shí)是對(duì)之前使用playbook的文件目錄進(jìn)行了一些規(guī)范(比如必須有roles目錄且和playbook入口文件在同一位置,roles目錄下的各個(gè)特定role的目錄也是固定命名的)。

代碼已經(jīng)上傳github

https://github.com/HobbyBear/ansible-role-filebeat.git

整個(gè)項(xiàng)目的目錄結(jié)構(gòu)如下所示,filebeatop.yml到時(shí)候是我們執(zhí)行ansible playbook命令的入口文件,我們可以使用這樣的命令使用這個(gè)role ,?ansible-playbook -i hosts filebeatop.yml?,其中hosts目錄就是存放inventory主機(jī)清單。

.
├── ReadMe.md
├── filebeatop.yml
├── group_vars
│   └── test.yml
├── hosts
│   ├── prod
│   └── test
└── roles└── filebeat├── handlers│   └── main.yml├── tasks│   ├── install.yml│   ├── main.yml│   ├── rpm.yml│   └── updatecfg.yml└── templates├── debug.conf├── filebeatbox.yml└── log.yml

filebeatop.yml 的內(nèi)容如下,其中roles配置項(xiàng)可以配置多個(gè)role,不過案例中就只配置了一個(gè)filebeat的role,這個(gè)role的名稱就是上述roles目錄下的filebeat這個(gè)文件夾的名稱。同時(shí)filebeatop.yml同時(shí)設(shè)置了變量version和logstashendpoint,不同的是version變量是role級(jí)別的。

- hosts: test  roles:  - role: filebeat  version : '7.14.2'  vars:  logstashendpoint:  192.168.0.2:5054

接著了解下roles目錄的結(jié)構(gòu),filebeat 就代表一個(gè)role,其下有handlers,tasks,templates目錄,它們存放的內(nèi)容如下,

roles
└── filebeat├── handlers│   └── main.yml├── tasks│   ├── install.yml│   ├── main.yml│   ├── rpm.yml│   └── updatecfg.yml└── templates├── debug.conf├── filebeatbox.yml└── log.yml

  • tasks?里面存放具體的Ansible 的各種模塊定義的任務(wù),其入口文件是main.yml 它里面可以通過include 引入其他task。就比如這個(gè)案例中,我在main.yml 引入了其他配置文件定義的任務(wù)。main.yml 代碼如下, 可以看到在引入其他配置文件定義的任務(wù)時(shí),我還用tags為任務(wù)打上了標(biāo)簽,這個(gè)標(biāo)簽可以讓我們后續(xù)根據(jù)特定的標(biāo)簽執(zhí)行任務(wù)。

-  include: install.yml  tags:  - install  -  include: rpm.yml  tags:  - rpm  -  include: updatecfg.yml  tags:  - updatecfg

  • handlers?目錄下存放任務(wù)的后續(xù)處理邏輯,它其實(shí)也是ansible的模塊定義的各種任務(wù),與tasks不同的是,它是專門放到tasks執(zhí)行后執(zhí)行的。例如在handlers的main.yml文件中,我定義了一個(gè)名為restart Filebeat service 的handler,handlers/main.yml代碼如下

become 設(shè)置為yes,become_method 設(shè)置為sudo 代表在運(yùn)行這個(gè)service的命令時(shí)是要以sudo權(quán)限運(yùn)行的。

- name: restart Filebeat service  become: yes  become_method: sudo  service:  name: filebeat  enabled: yes  state: restarted

這個(gè)handler在tasks/updatecfg.yml中有被用到,如下,在更新完filebeat服務(wù)配置后,通過notify配置,定義所需的handler的名稱,便可以在特定task執(zhí)行完成后運(yùn)行對(duì)應(yīng)的handler。

- name: 更新服務(wù)配置  shell: "sudo systemctl daemon-reload"  notify:  - restart Filebeat service

  • templates?目錄存放的是某些需要用到的配置文件模板,在模板文件中可以使用{{ 變量名 }} 引用,變量的定義可以在前面filebeatop.yml文件中vars,或者roles配置中定義,也可以放到與hosts目錄同級(jí)的group_vars 目錄中定義,Ansible 關(guān)于變量的定義方式有很多種,這里就不展開了。 拿案例中的group_vars舉例,其目錄下的文件名是inventory主機(jī)清單中的機(jī)器組的名稱,比如我這里有個(gè)test的機(jī)器組,所以我在group_vars有個(gè)test.yml文件,內(nèi)容如下,定義了兩個(gè)變量 log_path和log_type。

log_path: "- /home/webserver/logs/box-api/box-api.log\r\n    - /home/webserver/logs/box-bsk/box-bsk.log\r\n    - /home/webserver/logs/box-flow/box-flow.log"  log_type:  box

這兩個(gè)變量被 templates目錄下的log.yml文件所引用。log.yml文件內(nèi)容如下(是一個(gè)典型的filebeat設(shè)置日志采集路徑的配置)

- type: log  tail_files: true  paths:  {{ log_path}}  fields:  log_type: {{ log_type }}

如何使用這些模板文件呢,其實(shí)就是通過ansible的template模塊,拿filebeat role中的updatecfg.yml定義的任務(wù)片段舉例,將filebeat 相關(guān)的配置文件上傳到主機(jī)上對(duì)應(yīng)的目錄。

- name: 傳送配置文件  become: yes  become_method: sudo  template: src=log.yml dest=/home/webserver/local/filebeat-{{ version }}-linux-x86_64/log.yml owner=root group=root  - name: 傳送配置文件  become: yes  become_method: sudo  template: src=filebeatbox.yml dest=/home/webserver/local/filebeat-{{ version }}-linux-x86_64/filebeatbox.yml owner=root group=root

🤔思考如何利用role模式寫好Ansible的任務(wù)編排

簡(jiǎn)單介紹完整個(gè)案例的目錄和相關(guān)的文件后,我們從使用角度來(lái)分析如何寫一個(gè)好的部署任務(wù)。

像上述案例中,我們可以執(zhí)行下面的命令執(zhí)行相應(yīng)的部署,更新配置任務(wù)。

在filebeatop.yml 中指定要操作的機(jī)器組,以及filebeat的版本,日志輸出的logstahsh端點(diǎn)。 在group_vars 中定義每個(gè)機(jī)器組上需要采集的日志路徑

安裝filebeat軟件包

ansible-playbook -i hosts    filebeatop.yml --tags "install"

安裝filebeat service

ansible-playbook -i hosts    filebeatop.yml --tags "rpm"

更新filebeat配置文件

ansible-playbook -i hosts    filebeatop.yml --tags "updatecfg"

通過filebeat/tasks 引入其他任務(wù)配置文件時(shí)的 tags去區(qū)分要執(zhí)行的任務(wù),而整個(gè)role中則定義對(duì)應(yīng)的組件相關(guān)的操作,這樣能更好的維護(hù)對(duì)應(yīng)組件的部署配置任務(wù)。

并且讓roles相關(guān)的文件 只負(fù)責(zé)部署,而針對(duì)哪些機(jī)器部署的配置則從roles目錄中分離出來(lái),形成變量。這樣的好處在于,后續(xù)對(duì)于其他機(jī)器組的配置,相同組件的不同版本的配置都可以不用去動(dòng)roles目錄下的文件了,只需要新增不同的機(jī)器組的變量或者修改filebeatop.yml中的版本號(hào)即可。

文章轉(zhuǎn)載自:?藍(lán)胖子的編程夢(mèng)

原文鏈接:https://www.cnblogs.com/hobbybear/p/17824585.html

http://www.aloenet.com.cn/news/32345.html

相關(guān)文章:

  • 免費(fèi)的中文logo網(wǎng)站sem投放
  • 網(wǎng)站開源系統(tǒng)免費(fèi)網(wǎng)站建設(shè)seo
  • 營(yíng)銷qq和企業(yè)qq區(qū)別深圳專門做seo的公司
  • 網(wǎng)站建設(shè)英文怎么說百度一下你就知道官網(wǎng)網(wǎng)址
  • 成都商城網(wǎng)站建設(shè)地址推廣網(wǎng)頁(yè)怎么做的
  • 西安網(wǎng)站制作公司排名口碑營(yíng)銷屬于什么營(yíng)銷
  • 西部數(shù)碼網(wǎng)站助手4.0運(yùn)營(yíng)商推廣5g技術(shù)
  • 初學(xué)網(wǎng)站開發(fā)書籍關(guān)鍵詞歌曲歌詞
  • 濟(jì)南網(wǎng)站建設(shè)培訓(xùn)學(xué)校百度首頁(yè)推薦關(guān)不掉嗎
  • 手機(jī)網(wǎng)站底部代碼北京seo網(wǎng)站管理
  • 網(wǎng)站開發(fā)z億瑪酷1流量訂制怎么做信息流廣告代理商
  • 海珠區(qū)建網(wǎng)站公司著名的網(wǎng)絡(luò)營(yíng)銷案例
  • 怎么用模板做網(wǎng)站云南seo
  • 做網(wǎng)站 圖片素材怎么找智能建站系統(tǒng)
  • 醫(yī)院網(wǎng)站建設(shè)預(yù)算表企業(yè)網(wǎng)站制作步驟
  • 珠海營(yíng)銷型網(wǎng)站建設(shè)百度站內(nèi)搜索的方法
  • 設(shè)置 wap網(wǎng)站seo網(wǎng)站自動(dòng)發(fā)布外鏈工具
  • 怎么做網(wǎng)站掃描廣告點(diǎn)擊一次多少錢
  • 網(wǎng)站建設(shè)公司的服務(wù)特點(diǎn)網(wǎng)站優(yōu)化方案模板
  • 做電影網(wǎng)站考什么電商平臺(tái)推廣費(fèi)用大概要多少
  • 網(wǎng)站優(yōu)化要從哪些方面做上海seo網(wǎng)站推廣
  • 吉林市做網(wǎng)站的科技公司網(wǎng)絡(luò)推廣常見的方法
  • 純html5網(wǎng)站源碼長(zhǎng)沙網(wǎng)站優(yōu)化價(jià)格
  • 網(wǎng)站加速cdn自己做互聯(lián)網(wǎng)推廣是什么
  • 怎樣用wordpress建站網(wǎng)絡(luò)銷售是什么工作內(nèi)容
  • 社交平臺(tái)推廣方式seo外包方法
  • 網(wǎng)站建設(shè) 時(shí)間安排推廣軟件賺錢的app
  • 網(wǎng)站建設(shè)正版軟件廣東網(wǎng)站營(yíng)銷seo方案
  • 做網(wǎng)站 價(jià)格seo怎么優(yōu)化方案
  • 保定專業(yè)做網(wǎng)站的公司最近的國(guó)際新聞