




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
May2016?AboutEagle?Architecture?Ecosystem?Q&AApacheEagleisadistributedreal-timemonitoringandalertingengineforhadoopfromeBayOpensourcedasApacheIncubatorProjectonOct26th2015dataactivitymonitoringsolutiontoinstantlyidentifyaccesstosensitivedatarecognizeattacksmaliciousactivityandblockaccessinrealtime.ApacheIncubatoreagle.incubator.apacheApacheIHadoopEagleProductionReleaseDonatedtoApacheSoftwareFoundationASFfromeBayatOct6th,2015EEagleProjectInitiativeHadoopOctOct232015Oct262015GithubGithubOpenS/apache/incubator-eagle5HadoopData?Security?ActivityHadoopData?Security?ActivityHadoopPlatform?Heath?Availability?Performancetingtoollikezabbixgangliacannothandlethehugevolumeofmetrics/logsgeneratedbyhadoopsystemineBay.Hadoop@eBayInc3000+nodeses201020090+nodes20071-10nodes10,000nodes150,000+cores170PB20111000+nodes10,000+cores7Y7?AboutEagle?Architecture?Ecosystem?Q&AScalableScalestomonitorthousandsofpoliciesandbillionsofaccesseventsExtensibleEaglecanbeeasilyextendedtomonitorotherdatasourcesReal-timeGeneratesalertsinrealtimeandblocksuserswithmaliciousintentMachineLearningCreatedynamicuserprofilesbasedonuserbehaviorDataCollectorsEAMPROCESSINGPolicyEngineesholdsPolicyTADATAMANAGERDataCollectorsEAMPROCESSINGPolicyEngineesholdsPolicyTADATAMANAGERHDFS,Audit,SecurityCustommoduleApachest10?Real-timeDataCollection?DistributedPolicyEngine?StreamProcessingDSL?ScalableDataStorage&Query?MachineLearningIntegrationNOTE{NAME}-{NUMBER}likeHDFS-6914meansopensourceprojectticketidcontributedbyusDecouplingwithMessageBus?ApacheKafka:high-throughputdistributedmessaging?Partition:balancebetweenlogicandthroughputCross-PlatformIntegration?CommunityKafkaClient(18+)?Python/Go/C/C++/JAVA..?EnhancedLog4j-kafka?KAFKA-2041:ExtensiblePartitionKey?KAFKA-2077:AdvancedTopicSelector12FieldGroupingShuffleGroupingFieldGroupingShuffleGroupinglityFilebeatLogstashResourceconsumptionbalanceMessagethroughputbalance(LOGSTASH-179)Ligh-weightcollector(golang)withdaemonLogstashinstancesclusterDistributedMessageBusCentralizedStateManagementJOBLOGCentralizedStateManagementJOBLOGScalability:DistributedReal-timeIngestionpoutDistributedcrawlingforhadoopjobnodejmxandservicelogsetcReal-timeEventStreamvironmentagementReal-timeEventStreamvironmentagementTADATAMANAGER?Real-time?Usability?Scalability?Extensibility?Metadata-drivenAlertExecutor_{2}…DynamicalStreamSchemaDynamicalPolicyDeployment15agementDynamicalStreamSchematagementDynamicalStreamSchemat.Kafka-basedDistributedMessageBus(Extensible).Storm-basedReal-timeEventStream(EventStream(Kafka)(Extensible).StreameventsareprocessedandalertsareevaluatedduringstreamingTADATAMANAGER16Alerts?PowerfulSQL-LikeCEPCQLforPolicyAlerts?PowerfulSQL-LikeCEPCQLforPolicyDefinition?DynamicalPoilcyMetadataLifecycleManagement(Deployment/Update)?Easy-to-usePolicymanagementandAlertanalyticsUI(value>1000)]select*insertintooutputStream;agementagement17Full-functionStreamingCEPCQL:SiddhionStormbydefaultngaggValueinsertintooutputStream?Filter?Join?Aggregation:Avg,Sum,Min,Max,etc?Groupby?Having?Streamhandlersforwindow:TimeWindow,BatchWindow,LengthWindow?ConditionsandExpressions:and,or,not,==,!=,>=,>,<=,<,andarithmeticoperations?Patternprocessing?Sequenceprocessing?EventTables:intergratehistoricaldatainrealtimeprocessing?SQL-LikeQuery:Query,StreamDefinitionandQueryPlancompilation18vironmentvironmentbilitydynamicpolicypartitionbyeventpolicy?NUserswith3partitions,Mpolicieswith2partitions,then3*2physicaltasks?Physicalpartition+policy-levelpartition…19DistributedStreamingPartitionProblemS={3,1,1,2,2,1,1}DistributedStreamingPartitionProblemS={3,1,1,2,2,1,1}S1={1,1,1,1,1}S2={2,2}S3={3}20Strategy?Greedy(Online/Offline)?PoTC?PKG?HashingStrategy?Greedy(Online/Offline)?PoTC?PKG?HashingicsCacheDistributedStreamingPartitionStrategygroupBygroupBy[GreedyStrategy]((_.key1,_.key2))KeyDistributionStatisticsfflineKeyDistributionStatisticsfflineStrategyExtensibility?ExtensiblepolicylifecyclemanagementExtensibility?Extensiblepolicylifecyclemanagement?SupportWSO2SiddhiCEPasfirstclass?ExtensiblepolicyengineimplementationpublicpublicinterfacePolicyEvaluatorServiceProvider{publicStringgetPolicyType();//literalstringtoidentifyonetypeofpolicypublicClassgetPolicyEvaluator();//getpolicyevaluatorimplementationpublicListgetBindingModules();//policytextwithjsonformattoobjectmapping}publicpublicinterfacePolicyEvaluator{publicvoidevaluate(ValuesArrayinput)throwsException;//evaluateinputeventpublicvoidonPolicyUpdate(AlertDefinitionAPIEntitynewAlertDef);//policyupdatepublicvoidonPolicyDelete();//invokedwhenpolicyisdeleted}DistributedReal-timePolicyEnginePolicy/MetadataTADATAMANAGER22n?PolicyDefinition:AlertDefinitionAPIEntity?Centralmetadatamanagementn?PolicyDefinition:AlertDefinitionAPIEntity?Centralmetadatamanagement?Dynamicmetadatadeployment?StreamSchema:AlertStreamSchemaEntity@@Table("alertdef")@ColumnFamily("f")@Prefix("alertdef")@Service(AlertConstants.ALERT_DEFINITION_SERVICE_ENDPOINT_NAME)@JsonIgnoreProperties(ignoreUnknown=true)@TimeSeries(false)@Tags({"site","dataSource","alertExecutorId","policyId","policyType"})@Indexes({@Index(name="Index_1_alertExecutorId",columns={"alertExecutorID"},unique=true),})publicclassAlertDefinitionAPIEntityextendsTaggedLogAPIEntity{@Column("a")privateStringdesc;@Column("b")privateStringpolicyDef;@Column("c")privateStringdedupeDef;DistributedDistributedReal-timePolicyEngineDynamicMetadataLoadingTADATAMANAGERStream_{1}StreamProcessingReal-timeEventStream Stream_{*}Stream_{1}StreamProcessingReal-timeEventStream Stream_{*}…usterEnvironmentfigOptimizer1.Development2.Optimization3.Compiletonativeapp?Physicalexecutionplatformindependent?Easilyassembledatatransformation,filtering,joinandalertingDAGinfluentway?DAGrewriteandoptimization?StreamUnionExpansion?StreamGroupbyExpansion?StreamNameExpansion?StreamAlertExpansion?StreamParallelismConfigExpansiontraittraitStreamProducer{filterflatMapmap{1,2,3,4}groupBystreamUnion//streamjoinishard,notimplementedforstormalertWithConsumer}StormExecutionEnvironmentenv=ExecutionEnvironmentFactory.getStorm(config);env.newSource(newKafkaSourcedSpoutProvider().getSpout(config)).renameOutputFields(1).flatMap(newAuditLogTransformer()).groupBy(0).flatMap(newUserProfileAggregatorExecutor());cutorenv.execute();25query=AlertDefinitionService[@dataSource="hiveQueryLog"]{@policyDef}query=AlertDefinitionService[@dataSource="hiveQueryLog"]{@policyDef}?EntityMetadataonlarge-scaleNoSQLstoragelikeHBase?Full-functionSQL-LikeRESTQuery?Optimizedrowkeydesignfortime-seriesmonitoringdataHBaseCoprocessor?SecondaryIndex@@Table("alertdef")@ColumnFamily("f")@Prefix("alertdef")@Service(AlertConstants.ALERT_DEFINITION_SERVICE_ENDPOINT_NAME)@JsonIgnoreProperties(ignoreUnknown=true)@TimeSeries(false)@Tags({"site","dataSource","alertExecutorId","policyId","policyType"})@Indexes({@Index(name="Index_1_alertExecutorId",columns={"alertExecutorID"},unique=true),})publicclassAlertDefinitionAPIEntityextendsTaggedLogAPIEntity{@Column("a")privateStringdesc;@Column("b")privateStringpolicyDef;@Column("c")privateStringdedupeDef;26mrowkeydesign…cRowkeyMetricNametimestamptagNametagValue…timestamptagNametagValue…Rowkey::=LogType|PartitionKeys|timestamp|tagName|tagValue|…Rowvalue::=LogContent27AnomalyMetricPredictiveDetectionCaseStudyAnomalyMetricPredictiveDetectionCaseStudyAnomalyMetricPredictiveDetectionOffline:Analyzingandcombining500+metricstogetherforcausalanomalydetections(IG->PCA->GMM->MCC)Online:PredictivelyalertforanomalymetricsPCAPrincipalComponentAnalysis)Normal(Green)andAbnormal(Red)DataandProbabilityDistributionandThresholdSelection?AboutApacheEagle?Architecture?Ecosystem?Q&AEagleFrameworkDistributedreal-timeframeworkforefficientlydevelopinghighlyscalablemonitoringapplicationsEagleAppsSecurity/Hadoop/DatabaseEagleInterfaceRESTService/ManagementUI/CustomizableAnalyticsVisualizationEagleIntegrationAmbari/Docker/Ranger/DataguiseOpenSourcetionInIntegrationàAmbariàDockeràRangeràDataguiseàWebPortalàRESTServicesàAnalyticsVisualizationAppsàSecurityàHadoopàCloudàDatabaseEagleFramework?HDFSAuditLog?HiveQueryLog?ApacheRanger?Adopteagleoutput?Dataguise?Cassandra?CapitialOne?Paypalserauserandsrcbsrcduserauserandsrcasrcorpc“->f=eventStream[cmd==‘rename’anduser==a.userandsrc==b.srcanddst==a.src]”GwedtrueugirootauthSIMPLEipcmdcreatesrctmpprivateCOPYINGINFOFSNamesystemauditallowedtrueugirootaut
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國電熱鍋爐蒸壓釜市場調(diào)查研究報(bào)告
- 2025年中國汽車空氣濾清器總成市場調(diào)查研究報(bào)告
- 2025年生化診斷試劑項(xiàng)目合作計(jì)劃書
- 遼寧省葫蘆島市2024-2025學(xué)年高二上學(xué)期1月期末考試物理試卷(解析版)
- 遼寧名校聯(lián)盟2024-2025學(xué)年高二上學(xué)期12月月考物理物理試卷(解析版)
- 2025年中國交通工具鎖市場調(diào)查研究報(bào)告
- 2025年中國D型廳站板市場調(diào)查研究報(bào)告
- 個(gè)人服務(wù)企業(yè)合同范例
- 京城股合同范本
- 全款購房合同范例
- CVP中心靜脈壓CVP監(jiān)測
- 13詩第十二-整本書閱讀系列《經(jīng)典常談》名著閱讀與練習(xí)
- 小學(xué)美術(shù)-湘美版四年級下冊第10課中國龍教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- 一年級下冊勞技教案
- 部編版四年級語文下冊第4單元大單元整體教學(xué)作業(yè)設(shè)計(jì)(教案配套)
- 大一邏輯學(xué)全部
- 游戲法緩解小班幼兒入園焦慮的個(gè)案研究
- 2023年包頭輕工職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)題庫及答案解析
- 地下室頂板裂縫防水處理方案(完整資料)
- 宮頸錐切日間手術(shù)臨床路徑(婦科)及表單
- GB/T 23111-2008非自動(dòng)衡器
評論
0/150
提交評論