Memcached Exporter是Prometheus的***导出器,用于从Memcached服务器收集性能指标并以Prometheus兼容格式暴露,以便进行监控和告警。该导出器能够采集Memcached的连接状态、命令执行情况、内存使用、LRU缓存行为等关键指标,并通过HTTP接口提供给Prometheus抓取。
/scrape端点支持多Memcached实例监控,适合大规模部署适用于所有需要监控Memcached服务器运行状态的场景,包括:
通过Docker运行Memcached Exporter,默认监听9150端口,暴露/metrics端点:
shdocker run -p 9150:9150 quay.io/prometheus/memcached-exporter:latest
默认连接localhost:***,可通过--memcached.address参数指定目标Memcached地址:
shdocker run -p 9150:9150 quay.io/prometheus/memcached-exporter:latest --memcached.address=memcached-host:***
支持通过/scrape端点采集多个Memcached实例指标,需指定target参数:
shcurl http://localhost:9150/scrape?target=memcached-host.company.com:***
启动多目标模式时,建议设置--memcached.address=""避免默认连接:
sh./memcached-exporter --memcached.address=""
结合服务发现工具(如prometheus-elasticache-sd)的Prometheus配置示例:
yamlscrape_configs: - job_name: "memcached_exporter_targets" file_sd_configs: - files: - /path/to/elasticache.json # 服务发现生成的目标文件 metrics_path: /scrape relabel_configs: # 仅保留Memcached实例 - source_labels: [__meta_elasticache_engine] regex: memcached action: keep # 构建目标参数 - source_labels: [__meta_elasticache_endpoint_address, __meta_elasticache_endpoint_port] separator: ':' target_label: __param_target # 设置instance标签 - source_labels: [__param_target] target_label: instance # 导出器地址 - target_label: __address__ replacement: memcached-exporter-service.company.com:9151
通过--web.config.file参数指定配置文件启用TLS和基本认证,配置文件格式详见exporter-toolkit文档。
使用--memcached.tls.*系列参数配置与Memcached的TLS连接,具体参数可通过memcached_exporter --help查看。
通过--memcached.pid-file <path>参数指定Memcached进程PID文件,可额外采集进程资源使用指标(需导出器进程有权限读取/proc信息),包括CPU时间、内存使用、文件描述符等。
导出器采集以下Memcached指标(按类型分类):
# HELP memcached_accepting_conns The Memcached server is currently accepting new connections. # TYPE memcached_accepting_conns gauge # HELP memcached_connections_listener_disabled_total Number of times that memcached has hit its connections limit and disabled its listener. # TYPE memcached_connections_listener_disabled_total counter # HELP memcached_connections_total Total number of connections opened since the server started running. # TYPE memcached_connections_total counter # HELP memcached_connections_yielded_total Total number of connections yielded running due to hitting the memcached's -R limit. # TYPE memcached_connections_yielded_total counter # HELP memcached_current_connections Current number of open connections. # TYPE memcached_current_connections gauge # HELP memcached_max_connections Maximum number of clients allowed. # TYPE memcached_max_connections gauge
# HELP memcached_commands_total Total number of all requests broken down by command (get, set, etc.) and status. # TYPE memcached_commands_total counter
# HELP memcached_current_bytes Current number of bytes used to store items. # TYPE memcached_current_bytes gauge # HELP memcached_current_items Current number of items stored by this instance. # TYPE memcached_current_items gauge # HELP memcached_items_total Total number of items stored during the life of this instance. # TYPE memcached_items_total counter # HELP memcached_limit_bytes Number of bytes this server is allowed to use for storage. # TYPE memcached_limit_bytes gauge # HELP memcached_malloced_bytes Number of bytes of memory allocated to slab pages. # TYPE memcached_malloced_bytes gauge
# HELP memcached_direct_reclaims_total Times worker threads had to directly reclaim or evict items. # TYPE memcached_direct_reclaims_total counter # HELP memcached_items_evicted_total Total number of valid items removed from cache to free memory for new items. # TYPE memcached_items_evicted_total counter # HELP memcached_items_reclaimed_total Total number of times an entry was stored using memory from an expired entry. # TYPE memcached_items_reclaimed_total counter # HELP memcached_lru_crawler_enabled Whether the LRU crawler is enabled. # TYPE memcached_lru_crawler_enabled gauge # HELP memcached_lru_crawler_hot_max_factor Set idle age of HOT LRU to COLD age * this # TYPE memcached_lru_crawler_hot_max_factor gauge # HELP memcached_lru_crawler_hot_percent Percent of slab memory reserved for HOT LRU. # TYPE memcached_lru_crawler_hot_percent gauge # HELP memcached_lru_crawler_items_checked_total Total items examined by LRU Crawler. # TYPE memcached_lru_crawler_items_checked_total counter # HELP memcached_lru_crawler_maintainer_thread Split LRU mode and background threads. # TYPE memcached_lru_crawler_maintainer_thread gauge # HELP memcached_lru_crawler_moves_to_cold_total Total number of items moved from HOT/WARM to COLD LRU's. # TYPE memcached_lru_crawler_moves_to_cold_total counter # HELP memcached_lru_crawler_moves_to_warm_total Total number of items moved from COLD to WARM LRU. # TYPE memcached_lru_crawler_moves_to_warm_total counter # HELP memcached_lru_crawler_moves_within_lru_total Total number of items reshuffled within HOT or WARM LRU's. # TYPE memcached_lru_crawler_moves_within_lru_total counter # HELP memcached_lru_crawler_reclaimed_total Total items freed by LRU Crawler. # TYPE memcached_lru_crawler_reclaimed_total counter # HELP memcached_lru_crawler_sleep Microseconds to sleep between LRU crawls. # TYPE memcached_lru_crawler_sleep gauge # HELP memcached_lru_crawler_starts_total Times an LRU crawler was started. # TYPE memcached_lru_crawler_starts_total counter # HELP memcached_lru_crawler_to_crawl Max items to crawl per slab per run. # TYPE memcached_lru_crawler_to_crawl gauge # HELP memcached_lru_crawler_warm_max_factor Set idle age of WARM LRU to COLD age * this # TYPE memcached_lru_crawler_warm_max_factor gauge # HELP memcached_lru_crawler_warm_percent Percent of slab memory reserved for WARM LRU. # TYPE memcached_lru_crawler_warm_percent gauge
# HELP memcached_read_bytes_total Total number of bytes read by this server from network. # TYPE memcached_read_bytes_total counter # HELP memcached_written_bytes_total Total number of bytes sent by this server to network. # TYPE memcached_written_bytes_total counter
# HELP memcached_time_seconds current UNIX time according to the server. # TYPE memcached_time_seconds gauge # HELP memcached_up Could the memcached server be reached. # TYPE memcached_up gauge # HELP memcached_uptime_seconds Number of seconds since the server started. # TYPE memcached_uptime_seconds counter # HELP memcached_version The version of this memcached server. # TYPE memcached_version gauge
# HELP memcached_slab_chunk_size_bytes Number of bytes allocated to each chunk within this slab class. # TYPE memcached_slab_chunk_size_bytes gauge # HELP memcached_slab_chunks_free Number of chunks not yet allocated items. # TYPE memcached_slab_chunks_free gauge # HELP memcached_slab_chunks_free_end Number of free chunks at the end of the last allocated page. # TYPE memcached_slab_chunks_free_end gauge # HELP memcached_slab_chunks_per_page Number of chunks within a single page for this slab class. # TYPE memcached_slab_chunks_per_page gauge # HELP memcached_slab_chunks_used Number of chunks allocated to an item. # TYPE memcached_slab_chunks_used gauge # HELP memcached_slab_cold_items Number of items presently stored in the COLD LRU. # TYPE memcached_slab_cold_items gauge # HELP memcached_slab_commands_total Total number of all requests broken down by command (get, set, etc.) and status per slab. # TYPE memcached_slab_commands_total counter # HELP memcached_slab_current_chunks Number of chunks allocated to this slab class. # TYPE memcached_slab_current_chunks gauge # HELP memcached_slab_current_items Number of items currently stored in this slab class. # TYPE memcached_slab_current_items gauge # HELP memcached_slab_current_pages Number of pages allocated to this slab class. # TYPE memcached_slab_current_pages gauge # HELP memcached_slab_hot_age_seconds Age of the oldest item in HOT LRU. # TYPE memcached_slab_hot_age_seconds gauge # HELP memcached_slab_hot_items Number of items presently stored in the HOT LRU. # TYPE memcached_slab_hot_items gauge # HELP memcached_slab_items_age_seconds Number of seconds the oldest item has been in the slab class. # TYPE memcached_slab_items_age_seconds gauge # HELP memcached_slab_items_crawler_reclaimed_total Number of items freed by the LRU Crawler. # TYPE memcached_slab_items_crawler_reclaimed_total counter # HELP memcached_slab_items_evicted_nonzero_total Total number of times an item which had an explicit expire time set had to be evicted from the LRU before it expired. # TYPE memcached_slab_items_evicted_nonzero_total counter # HELP memcached_slab_items_evicted_time_seconds Seconds since the last access for the most recent item evicted from this class. # TYPE memcached_slab_items_evicted_time_seconds counter # HELP memcached_slab_items_evicted_total Total number of times an item had to be evicted from the LRU before it expired. # TYPE memcached_slab_items_evicted_total counter # HELP memcached_slab_items_evicted_unfetched_total Total nmber of items evicted and never fetched. # TYPE memcached_slab_items_evicted_unfetched_total counter # HELP memcached_slab_items_expired_unfetched_total Total number of valid items evicted from the LRU which were never touched after being set. # TYPE memcached_slab_items_expired_unfetched_total counter # HELP memcached_slab_items_moves_to_cold Number of items moved from HOT or WARM into COLD. # TYPE memcached_slab_items_moves_to_cold counter # HELP memcached_slab_items_moves_to_warm Number of items moves from COLD into WARM. # TYPE memcached_slab_items_moves_to_warm counter # HELP memcached_slab_items_moves_within_lru Number of times active items were bumped within HOT or WARM. # TYPE memcached_slab_items_moves_within_lru counter # HELP memcached_slab_items_outofmemory_total Total number of items for this slab class that have triggered an out of memory error. # TYPE memcached_slab_items_outofmemory_total counter # HELP memcached_slab_items_reclaimed_total Total number of items reclaimed. # TYPE memcached_slab_items_reclaimed_total counter # HELP memcached_slab_items_tailrepairs_total Total number of times the entries for a particular ID need repairing. # TYPE memcached_slab_items_tailrepairs_total counter # HELP memcached_slab_lru_hits_total Number of get_hits to the LRU. # TYPE memcached_slab_lru_hits_total counter # HELP memcached_slab_mem_requested_bytes Number of bytes of memory actual items take up within a slab. # TYPE memcached_slab_mem_requested_bytes counter # HELP memcached_slab_warm_age_seconds Age of the oldest item in HOT LRU. # TYPE memcached_slab_warm_age_seconds gauge # HELP memcached_slab_warm_items Number of items presently stored in the WARM LRU. # TYPE memcached_slab_warm_items gauge
# HELP memcached_process_cpu_seconds_total Total user and system CPU time spent in seconds. # TYPE memcached_process_cpu_seconds_total counter # HELP memcached_process_max_fds Maximum number of open file descriptors. # TYPE memcached_process_max_fds gauge # HELP memcached_process_open_fds Number of open file descriptors. # TYPE memcached_process_open_fds gauge # HELP memcached_process_resident_memory_bytes Resident memory size in bytes. # TYPE memcached_process_resident_memory_bytes gauge # HELP memcached_process_start_time_seconds Start time of the process since unix epoch in seconds. # TYPE memcached_process_start_time_seconds gauge # HELP memcached_process_virtual_memory_bytes Virtual memory size in bytes. # TYPE memcached_process_virtual_memory_bytes gauge
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429