def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='service'), target_spec=utils.NodeSpec(origin='kubernetes', kind='endpoints'), matcher=matcher.ServiceToEndpointsMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec( origin='kubernetes', kind='horizontal_pod_autoscaler'), target_spec=utils.NodeSpec(origin='kubernetes', kind='deployment'), matcher=matcher.HorizontalPodAutoscalerMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='cluster'), target_spec=utils.NodeSpec(origin='kubernetes', kind='node'), matcher=matcher.ClusterToNodeMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='ingress'), target_spec=utils.NodeSpec(origin='kubernetes', kind='service'), matcher=matcher.IngressToServiceMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='persistent_volume'), target_spec=utils.NodeSpec(origin='kubernetes', kind='storage_class'), matcher=matcher.PersistentVolumeToStorageClassMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='deployment'), target_spec=utils.NodeSpec(origin='kubernetes', kind='replica_set'), matcher=matcher.DeploymentToReplicaSetMatcher())
def run(self): garbage_collectors = [ collector.StaleNodeCollector(self._graph, utils.NodeSpec("elastalert", "alert"), 300), collector.StaleNodeCollector(self._graph, utils.NodeSpec("falco", "alert"), 300), ] garbage_remover = remover.Remover(self._graph, garbage_collectors) gc_interval = CONFIG.topology.gc.interval while True: start_time = time.time() removed_nodes = garbage_remover.run() gc_time = time.time() - start_time LOG.info("Garbage collected %i nodes (%.2f seconds)", len(removed_nodes), gc_time) time.sleep(gc_interval)
def get(cls, graph): return cls( graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='service'), target_spec=utils.NodeSpec(origin='istio', kind='destination_rule'), matcher=matcher.ServiceToDestinationRuleMatcher())
def get(cls, graph): return cls( graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='service'), target_spec=utils.NodeSpec(origin='istio', kind='virtual_service'), matcher=matcher.ServiceToVirtualServiceMatcher())
def get(cls, graph): return cls( graph=graph, source_spec=utils.NodeSpec(origin='istio', kind='gateway'), target_spec=utils.NodeSpec(origin='istio', kind='virtual_service'), matcher=matcher.GatewayToVirtualServiceMatcher())
def get(cls, graph, origin): return cls(graph=graph, source_spec=utils.NodeSpec(origin=origin, kind='alert'), target_spec=utils.NodeSpec(origin='any', kind='any'), matcher=matcher.AlertToSourceMatcher(), bidirectional=False)
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='daemon_set'), target_spec=utils.NodeSpec(origin='kubernetes', kind='pod'), matcher=matcher.DaemonSetToPodMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='cron_job'), target_spec=utils.NodeSpec(origin='kubernetes', kind='job'), matcher=matcher.CronJobToJobMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='pod'), target_spec=utils.NodeSpec(origin='kubernetes', kind='persistent_volume_claim'), matcher=matcher.PodToPersistentVolumeClaimMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='pod'), target_spec=utils.NodeSpec(origin='kubernetes', kind='secret'), matcher=matcher.PodToSecretMatcher())
def get(cls, graph): return cls(graph=graph, source_spec=utils.NodeSpec(origin='kubernetes', kind='pod'), target_spec=utils.NodeSpec(origin='kubernetes', kind='config_map'), matcher=matcher.PodToConfigMapMatcher())