Introduction
Calico is an open-source project that provides networking and security for Kubernetes. It’s a plug-in that implements the Kubernetes Container Network Interface (CNI).
Usually it exposes Prometheus metrics via two main components:
- Felix (for smaller cluster)
- Typha (for large cluster)
Kubernetes 2.0 ConfigMap
Users should update or append the existing ConfigMap named opsramp-workload-metric-user-config
by adding application-specific fields. These fields may include authentication credentials, collection frequency, and other relevant configurations.
apiVersion: v1
kind: ConfigMap
metadata:
name: opsramp-workload-metric-user-config
namespace: opsramp-agent
data:
workloads: |
calico:
- name: calico
collectionFrequency: 59s
port: 9091
filters: # optional
- regex: 'felix_cluster_num_hosts'
action: exclude
- regex: 'felix_ipset_lines_executed'
action: include
targetPodSelector:
matchLabels:
- key: k8s-app
operator: ==
value:
- calico-node
Supported Metrics
Supported metrics for this workload as provided by the Kubernetes 2.0 Agent.
Metric | Description |
---|---|
felix_iptables_restore_errors | Total number of errors encountered during the iptables restore process in Felix. |
felix_iptables_save_calls | Total number of calls made to save iptables rules in Felix. |
felix_active_local_endpoints | Total number of active local endpoints managed by Felix. |
felix_int_dataplane_addr_msg_batch_size | Batch size for address messages sent in the internal dataplane in Felix. |
felix_int_dataplane_apply_time_seconds | Time (in seconds) spent applying changes to the internal dataplane in Felix. |
felix_log_errors | Total number of error logs generated by Felix. |
felix_bpf_happy_dataplane_endpoints | Number of endpoints in the BPF dataplane that are considered happy (in a good state) in Felix. |
felix_host | The hostname of the machine running the Felix agent. |
felix_int_dataplane_msg_batch_size | Batch size for messages sent within the internal dataplane in Felix. |
felix_logs_dropped | Total number of logs dropped by Felix due to system limitations or issues. |
felix_iptables_save_errors | Total number of errors encountered during the iptables save process in Felix. |
felix_resyncs_started | Total number of resync operations started by Felix to reconcile state. |
felix_route_table_list_seconds | Time (in seconds) taken to list the route table entries in Felix. |
felix_active_local_policies | Total number of active local policies applied by Felix. |
felix_active_local_selectors | Total number of active local selectors in use by Felix. |
felix_calc_graph_update_time_seconds | Time (in seconds) spent calculating the graph updates for network policies in Felix. |
felix_cluster_num_workload_endpoints | Total number of workload endpoints in the Felix-managed cluster. |
felix_int_dataplane_failures | Total number of failures occurring in the internal dataplane in Felix. |
felix_cluster_num_hosts | Total number of hosts in the Felix-managed cluster. |
felix_ipsets_calico | Total number of Calico IP sets used by Felix. |
felix_iptables_lines_executed | Total number of iptables lines executed by Felix. |
felix_iptables_lock_retries | Total number of retries to acquire the iptables lock in Felix. |
felix_route_table_per_iface_sync_seconds | Time (in seconds) spent synchronizing the route table per network interface in Felix. |
felix_ipset_errors | Total number of errors encountered while managing IP sets in Felix. |
felix_ipset_lines_executed | Total number of ipset lines executed by Felix. |
felix_ipsets_total | Total number of IP sets managed by Felix. |
felix_calc_graph_updates_processed | Total number of graph updates processed by Felix for network policies. |
felix_iptables_rules | Total number of iptables rules applied by Felix. |
felix_cluster_num_policies | Total number of policies applied in the Felix-managed cluster. |
felix_int_dataplane_iface_msg_batch_size | Batch size for interface messages in the internal dataplane of Felix. |
felix_iptables_restore_calls | Total number of iptables restore calls made by Felix. |
felix_cluster_num_host_endpoints | Total number of host endpoints in the Felix-managed cluster. |
felix_iptables_chains | Total number of iptables chains created and managed by Felix. |
felix_exec_time_micros | Total execution time (in microseconds) for Felix operations. |
felix_ipset_calls | Total number of calls made to manage IP sets in Felix. |
felix_iptables_lock_acquire_secs | Total time (in seconds) spent acquiring the iptables lock in Felix. |
felix_bpf_num_ip_sets | Number of IP sets used by the BPF dataplane in Felix. |
felix_calc_graph_output_events | Total number of events generated by the calculation of the graph for network policies in Felix. |
felix_cluster_num_profiles | Total number of profiles in the Felix-managed cluster. |
felix_bpf_dataplane_endpoints | Total number of endpoints in the BPF dataplane managed by Felix. |
felix_resync_state | Current state of the resynchronization process in Felix. |
felix_bpf_dirty_dataplane_endpoints | Number of dirty (not synchronized) endpoints in the BPF dataplane in Felix. |
felix_int_dataplane_messages | Total number of messages processed by the internal dataplane in Felix. |