众所周知,mcollecitve只是一个框架而已,它单独是干不了任何事情的,如果要让他去操作一个平台,是需要插件(plugins)进行操作的,比如通过puppet插件去管理节点puppet的所有命令,通过fact插件去管理fact的所有参数等等,那么如何去管理系统的命令呢,这就需要shell插件。
插件下载地址:https://github.com/kisspuppet/mcollective-plugins,有github客户端的童鞋可直接clonehttps://github.com/kisspuppet/mcollective-plugins.git
更多有关puppet的文章可访问http://kisspuppet.com
1、下载插件放在对应的目录里即可
mcollective-client端
[root@linuxmaster1poc ~]# mco shell "cat /etc/passwd | grep puppet" Do you really want to send this command unfiltered? (y/n): y Discovering hosts using the mc method for 2 second(s) .... 3 Host: linux58poc Statuscode: 0 Output: puppet:x:52:52:Puppet:/var/lib/puppet:/sbin/nologin Host: linux64poc Statuscode: 0 Output: puppet:x:52:52:Puppet:/var/lib/puppet:/sbin/nologin Host: linux57poc Statuscode: 0 Output: puppet:x:52:52:Puppet:/var/lib/puppet:/sbin/nologin
mcollective-server端
[root@linux57poc agent]# ll /usr/libexec/mcollective/mcollective/agent/ | grep shell -rw-r--r-- 1 root root 1017 Aug 6 06:36 shell.ddl -rw-r--r-- 1 root root 862 Aug 6 06:36 shell.rb
备注:mcollective-server端部署完成之后,记得重启mcollective服务。
2、 查看shell插件是否加载成功
从下面可以看出mcollective-client端shell插件已经有了[root@linuxmaster1poc ~]# mco The Marionette Collective version 2.2.4
usage: /usr/bin/mco command <options> Known commands: completion facts find help inventory ping plugin puppet rpc shell #shell插件加载OK Type '/usr/bin/mco help' for a detailed list of commands and '/usr/bin/mco help command' to get detailed help for a command
从下面可以看出mcollective-server端shell插件也加载了
[root@linuxmaster1poc ~]# mco inventory linux57poc Inventory for linux57poc: Server Statistics: Version: 2.2.4 Start Time: Fri Dec 13 01:14:14 +0800 2013 Config File: /etc/mcollective/server.cfg Collectives: mcollective Main Collective: mcollective Process ID: 23898 Total Messages: 10 Messages Passed Filters: 10 Messages Filtered: 0 Expired Messages: 0 Replies Sent: 9 Total Processor Time: 0.73 seconds System Time: 0.17 seconds Agents: discovery puppet rpcutil shell #shell插件加载OK Data Plugins: agent fstat puppet resource Configuration Management Classes: No classes applied Facts: architecture => x86_64 augeasversion => 0.10.0 bios_release_date => 06/22/2012 bios_vendor => Phoenix Technologies LTD bios_version => 6.00 blockdevice_fd0_size => 4096 blockdevice_hdc_size => 3834736640 blockdevice_sda_model => Virtual disk blockdevice_sda_size => 42949672960 。。。
3、通过shell插件执行shell命令
mco shell帮助信息
[root@linuxmaster1poc ~]# mco shell --help MCollective Distributed Shell Usage: mco shell <CMD> The CMD is a string EXAMPLES: mco shell uptime --np, --no-progress Do not show the progress bar -1, --one Send request to only one discovered nodes --batch SIZE Do requests in batches --batch-sleep SECONDS Sleep time between batches --limit-seed NUMBER Seed value for deterministic random batching --limit-nodes, --ln, --limit COUNT Send request to only a subset of nodes, can be a percentage -j, --json说说我理解的互联网共享精神 阅读原文»说说我理解的互联网共享精神前几天和几个同行交流工作的时候,大家都深感随着互联网巨头的全领域发展,近乎垄断式的局面正在让草根创业者失去机会,这其中大到新项目的再创业小到一个小小的百科词条建立和修改,都越来越凸显互联网巨头在垄断方面的无理和强势。细问之下,才知道这个朋友今年年中再创业,但半年时间里仍未在百度百科上建立一个词条,究其原因,每次建立的词条均被百度以莫须有的罪名予以删除或不通过。
我们聊天的话题主题便是互联网精神,而这个朋友因为百度百科的遭遇,便将其对词条处理的方式归结为互联网巨头垄断的结果,我作为一个曾经的百科词条工作者(我曾在某百科词条公司工作过),在不方便对互联网巨头垄断说写什么的情况下,只能从互联网共享精神方面说说对百度百科词条审核方面的感想。
传统意义上的互联网精神是"开放、平等、协作、分享",这个理念从1959年ARPA建立ARPANET网开始便逐渐形成,而对照今天的互联网现象,却不难发现这种精神越发缺失。对着我的这个创业朋友的遭遇情况,更不难对比出发现,百度百科在"分享"方面的行为正在和这种互联网精神背道而驰。
2008年的时候,我曾在百度百科的某竞争对手公司工作,作为百度百科国内最主要的竞争对手,当时我所在的这家公司以为凭借公平的市场竞争,做好自己的内容和用户培养就行。但是后来,百度百科相关工作人员(也有可能是普通词条编辑者)潜入公司内部QQ群打探用户培养模式的方式的时候,公司才意识到国内的互联网竞争环境,远远不再是"开放、平等、协作、分享"局面,其中最为突出的显现是当时百度百科人员不仅打探公司的用户培养方式,而且在内容方面也大肆抄袭公司的词条内容。
公司对百度百科相关人员打探用户培养模式和词条内容抄袭行为,最开始保留了宽容态度,但随着百度百科越发肆虐的抄袭行为,公司最终选择了在2011年发起了诉百度百科的官司(此时我已经离职),但是遗憾的是最后公司输了官司。
目前这件事情虽然已经过去很多年,但却给了我对中国互联网环境的初始印象:蛮荒、野蛮、残忍,即便你是在无辜被伤害的情况下,很多时候你的结局并不一定是值得同情的。从我当时在这家百度百科的竞争对手公司来看,自己的用户培养模式、词条内容被百度百科大肆抄袭之后,居然最后还输了官司,这种行为着实有些让人不可理解。并且,在内容建设上,百度百科最早copy维基百科的方式,也同样不在少数。
但是百科作为一种互联网的内容分享产物,本应是为亿万网友造福而服务,但是今天的百度百科无论在内容建设方面,还是品牌传播方面,都已经正在背离这种精神。我曾经在维基百科、百度百科上建立和编辑同一个词条,发现维基百科只要内容客观、有理有据、有客观参考标准即可,但是百度百科蛮荒的动辄就以封杀的方式,几乎抹杀了一些原本属于高质量词条内容的词条。
协作、开放是互联网精神的最基本体现,但当前的百度百科却与这些精神毫无关系,即便你建立的词条,现在你想对其进行修改或内容完善,遭遇的结果很有可能是百度百科的封杀。这种由网友创造的内容,最后却不能真正为网友造福的方式,也使得百度百科正成为很多创业者口诛笔伐的对象。有媒体曾说:"百度百科的很多内容是由网友自发创造的,版权应该归网友所有,而不是被百度所霸占",这种说法并不无道理。
说了这么多,只是想表示:"开放、平等、协作、分享"的互联网精神,其实是一种最基本的人道精神,维基百科做到了这点,百度百科为什么不可以呢?
没有评论:
发表评论