首页 文章 精选 留言 我的

精选列表

搜索[基础搭建],共10000篇文章
优秀的个人博客,低调大师

ELK日志系统:Elasticsearch + Logstash + Kibana 搭建教程

环境:OS X 10.10.5 + JDK 1.8 步骤: 一、下载ELK的三大组件 Elasticsearch下载地址: https://www.elastic.co/downloads/elasticsearch (目前最新版本:2.1.1) Logstash下载地址:https://www.elastic.co/downloads/logstash(目前最新版本:2.1.1) Kibana下载地址:https://www.elastic.co/downloads/kibana(目前最新版本:4.3.1) 下载后将其解压到某个目录即可,本文中的解压目录为: ~/app/elasticsearch-2.1.1 ~/app/logstash-2.1.1 ~/app/kibana-4.3.1-darwin-x64 注:这3个组件相互之间的关系及作用如下: Logstash(收集服务器上的日志文件) --》然后保存到 ElasticSearch(搜索引擎) --》Kibana提供友好的web界面(从ElasticSearch读取数据进行展示) 二、启动elasticsearch 2.1 进入elasticsearch目录\bin ./elasticsearch 顺利的话,启动成功后,在浏览器里输入http://localhost:9200/ 应该能看到类似下面的输出: 1 { 2 "name" : "Atalanta", 3 "cluster_name" : "elasticsearch", 4 "version" : { 5 "number" : "2.1.1", 6 "build_hash" : "40e2c53a6b6c2972b3d13846e450e66f4375bd71", 7 "build_timestamp" : "2015-12-15T13:05:55Z", 8 "build_snapshot" : false, 9 "lucene_version" : "5.3.1" 10 }, 11 "tagline" : "You Know, for Search" 12 } 2.2 安装kopf插件 先按Ctrl+C停止elasticsearch,接下来准备安装插件,elasticsearch有大量插件资源,用于增加其功能,bin目录下,输入 ./plugin list 可以查看当前安装的插件列表,我们刚刚全新安装,输出的是一个空列表,继续输入 ./plugin install lmenezes/elasticsearch-kopf 将会联网安装kopf插件,安装完成后,再次用./plugin list确认下: Installed plugins in /Users/yjmyzz/app/elasticsearch-2.1.1/plugins: - .DS_Store - kopf 如果输出上述类似,表明kopf安装成功。 然后重启elasticsearch,浏览器里输入http://localhost:9200/_plugin/kopf,将会看到类似下面的界面,可以很直观的看到elasticsearch的一些运行状况 以上操作都ok后,建议Ctrl+C关掉,改用nohup ./elasticsearch & 将其做为后台进程运行,以免退出。 三、logstash的启动与配置 3.1 新建索引配置文件 ~/app/logstash-2.1.1/bin 下 mkdir conf vi conf/logstash-indexer.conf 内容如下: 1 input { 2 file { 3 path => ["/var/opt/log/a.log","/var/opt/log/b.log"] 4 } 5 } 6 7 output { 8 elasticsearch { hosts => ["localhost:9200"] } 9 stdout { codec => rubydebug } 10 } 上面几个步骤的意思就是创建一个名为logstash-indexer.conf的配置文件,input{file{...}}部分指定的是日志文件的位置(可以多个文件),一般来说就是应用程序log4j输出的日志文件。output部分则是表示将日志文件的内容保存到elasticsearch,这里hosts对应的是一个数组,可以设置多个elasticsearch主机,相当于一份日志文件的内容,可以保存到多个elasticsearch中。 至于第9行的stdout,则表示终端的标准输出,方便部署时验证是否正常运行,验证通过后,可以去掉。 3.2 启动 继续保持在logstash的bin目录下,输入 ./logstash -f conf/logstash-indexer.conf 稍等片刻,如果看到Logstash startup completed,则表示启动成功。然后另开一个终端窗口,随便找个文本编辑工具(比如:vi),向/var/opt/log/a.log里写点东西,比如:hello world之类,然后保存。观察logstash的终端运行窗口,是否有东西输出,如果有以下类似输出: 1 { 2 "message" => "hello world", 3 "@version" => "1", 4 "@timestamp" => "2016-01-08T14:35:16.834Z", 5 "host" => "yangjunmingdeMacBook-Pro.local", 6 "path" => "/var/opt/log/a.log" 7 } 说明logstash工作正常,此时浏览http://localhost:9200/_search?pretty 也应该能看到一堆输出,表明elasticsearch接收到logstash的数据了。 四、kibana的配置及启动 4.1 修改配置文件 ~/app/kibana-4.3.1-darwin-x64/config 下有一个配置文件kibana.yml,大概在12行的位置,改成下面这样: 1 # The Elasticsearch instance to use for all your queries. 2 elasticsearch.url: "http://localhost:9200" 即:指定elasticsearch的访问位置 4.2 启动 ~/app/kibana-4.3.1-darwin-x64/bin 下,输入: ./kibana 注:如果启动不成功,请检查版本是否为4.3.1,kibana必须与elasticsearch的版本匹配,一般说来,都从官网下载最新版即可。 启动完成后,在浏览器里输入http://localhost:5601/ 即可看到kibana界面,首次运行,会提示创建index,直接点击Create按钮即可。 然后,就能看到类似下面的界面了: 参考文章: http://baidu.blog.51cto.com/71938/1676798?utm_source=tuicool&utm_medium=referral https://www.elastic.co/products http://www.cnblogs.com/yjf512/p/4199105.html http://kibana.logstash.es/content/

优秀的个人博客,低调大师

storm实时流式计算框架集群搭建过程

http://blog.csdn.net/comaple/article/details/7896167 这几天在其他同事的帮助下,调研了twitter的开源流式计算框架storm的使用,下面分享一下storm集群的安装配置过程。以作备忘之用。 我的实验机器为:195和196 如果转载请注明出处:comaple的博客 首先:安装依赖包 1, ZeroMQ 2.1.7 2, JZMQ 3, Java 4, Python 5, Unzip 这里只需要安装1,2就可以了。下面是遇到的一些问题: 安装zeroMQ 下载zeroMQ2.1.7 http://www.zeromq.org/area:download 解压:tar –xvf zeromq-2.1.7.tar.gz Cd 到bin目录: ./autogen.sh 如果没有找到configure文件时要运行这一步。 ./configure configure: error: cannot link with -luuid, install uuid-dev. 运行时如果报这个错解决方案如下: yum install uuid-dev 提示找不到该依赖包 yum install uuid* 直接用* ok ./configure 再次运行configure还是报错 configure: error: cannot link with -luuid, install uuid-dev.上网搜索可能是还缺另外一个包 yum install e2fsprogs* ok make install 安装JZMQ a)下载jzmq.zip https://github.com/nathanmarz/jzmq b)Cd到bin目录./autogen.sh c)./configure d) make install 安装storm集群 配置说明:10.10.249.195:nimbus 10.10.249.196: supervisor Storm集群需要zookeeper集群的支持所以应该先安装zookeeper集群。再配置storm集群,下面是storm集群的配置: 10.10.249.195上的配置: a)下载storm-0.7.4.zip https://github.com/nathanmarz/storm/downloads b)解压后修改conf/storm.yaml文件, storm.zookeeper.servers: - "10.10.249.195" - "10.10.249.196" c)# nimbus.host:"nimbus" 这个不用改,nimbus负责提交任务,分配任务。相当于namenode节点。 配置好以后到bin目录下: ./storm nimbus 启动storm主节点服务 ./storm ui 启动storm监控页面:监控地址:http://hostname:8080 10.10.249.196上的配置: 1,修改storm.yaml 文件: storm.zookeeper.servers: -"10.10.249.195" -"10.10.249.196" nimbus.host: "10.10.249.195" #这个是storm将要启动几个本地work,一个端口对应一个work。 supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703 2,启动supervisor ./storm supervisor 提交任务: 10.10.249.195上面: ./storm jar stormWork.jar SearchKeywordTopNTopology"word-count" 这里有用到的jar文件大家可以试一试:stormWork.jar 监控storm运行情况:

优秀的个人博客,低调大师

Python基础知识细节点总结,零基础一分钟也能掌握

既然要开始学习Python,那么就首先就得不官网下载个Python,小编使用的是3.6的 安装教程百度经验里面还是很详细的。 那么正题开始吧! 两种格式化输出的方式 第一种是用%操作格式化输出字符串 代码如下: 运行上面的代码输出的结果: 第二种使用format()方法去格式化输出字符串 代码直接一行语句搞定 你运行后发现结果还是一样的! Python中类型的转换 很多初学者在刚开始学习Python的对于数据类型有点弄不清楚,比如: a = 666 这是一个定义a为666,默认是整型 B = '666' 这是也直接定义,然后默认是字符串 在Python中有三个内建的函数可以让我们进行类型转换,他们分别是int(),float()和str()函数 int()函数接收一个浮点型或者合适的字符串 比如:int(3.1415)、int('1314')、int('3.1415') 那么他们的运行结果是不是一样呢? 结果很明显了,int()函数接收一个浮点型或者合适的字符串! float() 函数接收一个整数和一个合适的字符串 比如:float(23),float('3.1415') str( ) 函数是把一个整型或者浮点型的数变为字符串 比如:str(1231)、str(3.1415) 那么对于类型的转换了解了么,可以自己动手亲自去试一试呀 关于列表的一些操作 例如 age = [1,2,3,4,5,6] #其实这里面也可以放不同类型的数据 列表是可以更改的,如进行单个元素的添加及删除。 我们后面将会介绍元组,它是不能修改的。 下面列举一些列表的操作 age[2] =13 age[-1]=23 someage = age[2:4] someage = age[0:5:2] del age[1] age.append('没粉丝的程序狗')

优秀的个人博客,低调大师

HarmonyOS NEXT应用接续开发指南(基础)

踏入鸿蒙世界的敲门砖,标志着您在技术征途上的全新起点,提升就业竞争力,获得行业认可,点亮职业成长先机,快人一步抢占未来应用开发赛道!https://developer.huawei.com/consumer/cn/training/dev-cert-detail/101666948302721398?ha_source=hmosclass-kaiyuanzhongguo&ha_sourceId=89000441 大家好!作为在华为鸿蒙开发领域深耕多年的开发者,今天我想和大家分享一下HarmonyOS NEXT中应用接续开发的相关知识。应用接续功能为用户带来了无缝切换设备使用应用的体验,大大提升了用户在多设备间的操作便利性。接下来,我们就深入探讨一下应用接续的具体内容。 应用接续的基本概念与应用场景 应用接续,简单来说,就是当用户在一个设备上操作某个应用时,能够在另一个设备上快速切换并继续该应用的任务,实现无缝衔接的使用体验。这一功能背后涉及到分布式状态同步技术,它确保了应用在不同设备间迁移时,用户的数据和操作状态能够得到准确的保存和恢复。 在实际使用场景中,应用接续发挥着重要作用。比如,当你在手机上浏览一篇长篇文章时,突然需要使用平板进行更舒适的阅读,这时应用接续功能就能让你在平板上继续从手机上中断的位置开始阅读,浏览器页面的滚动位置、阅读进度等都能完美同步。再比如,在PC上处理文档编辑任务时,如果需要外出,在手机上可以接着PC上的进度继续编辑,编辑器中的内容、格式设置等都不会丢失。这种从手机切换到平板,或者从PC继续手机上任务的场景,极大地提高了用户的工作和生活效率,让多设备协同使用更加流畅自然。 应用接续API解析 onContinue() onContinue() 是应用接续中源端UIAbility的关键接口。当应用触发迁移时,这个接口会在源端被调用。开发者可以在这个接口中完成多项重要操作,比如保存迁移所需要的数据。你可以把当前应用的关键信息,像编辑器中的文本内容、浏览器的当前页面URL等,通过键值对的方式保存在 wantParam 中。同时,还能进行应用兼容性检测,从 onContinue() 的入参 wantParam.version 获取迁移对端应用的版本号,与源端应用版本号进行比对,判断是否支持此次迁移。如果版本不兼容,可以返回相应的错误信息提示用户。示例代码如下: onCreate() 在目的端设备上,onCreate() 接口用于恢复迁移数据。通过 launchReason 判断该次启动是否为迁移启动,如果是,就可以从 want 中获取保存的迁移数据。例如: onNewWant() 对于单实例应用,还需要额外实现 onNewWant() 接口。它的实现方式与 onCreate() 类似,也是在判断为迁移场景时,恢复数据并触发页面恢复。示例代码如下: (转载自51CTO,作者:SameX)

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册