Class EC2SDConfig

  • All Implemented Interfaces:
    io.fabric8.kubernetes.api.builder.Editable<EC2SDConfigBuilder>, io.fabric8.kubernetes.api.model.KubernetesResource, Serializable

    @Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator")
    public class EC2SDConfig
    extends Object
    implements io.fabric8.kubernetes.api.builder.Editable<EC2SDConfigBuilder>, io.fabric8.kubernetes.api.model.KubernetesResource
    EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. The IAM credentials used must have the ec2:DescribeInstances permission to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config


    The EC2 service discovery requires AWS API keys or role ARN for authentication. BasicAuth, Authorization and OAuth2 fields are not present on purpose.

    See Also:
    Serialized Form
    • Constructor Detail

      • EC2SDConfig

        public EC2SDConfig()
        No args constructor for use in serialization
      • EC2SDConfig

        public EC2SDConfig​(io.fabric8.kubernetes.api.model.SecretKeySelector accessKey,
                           Boolean enableHTTP2,
                           List<Filter> filters,
                           Boolean followRedirects,
                           String noProxy,
                           Integer port,
                           Map<String,​List<io.fabric8.kubernetes.api.model.SecretKeySelector>> proxyConnectHeader,
                           Boolean proxyFromEnvironment,
                           String proxyUrl,
                           String refreshInterval,
                           String region,
                           String roleARN,
                           io.fabric8.kubernetes.api.model.SecretKeySelector secretKey,
                           SafeTLSConfig tlsConfig)
    • Method Detail

      • getAccessKey

        public io.fabric8.kubernetes.api.model.SecretKeySelector getAccessKey()
        EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. The IAM credentials used must have the ec2:DescribeInstances permission to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config


        The EC2 service discovery requires AWS API keys or role ARN for authentication. BasicAuth, Authorization and OAuth2 fields are not present on purpose.

      • setAccessKey

        public void setAccessKey​(io.fabric8.kubernetes.api.model.SecretKeySelector accessKey)
        EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. The IAM credentials used must have the ec2:DescribeInstances permission to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config


        The EC2 service discovery requires AWS API keys or role ARN for authentication. BasicAuth, Authorization and OAuth2 fields are not present on purpose.

      • getEnableHTTP2

        public Boolean getEnableHTTP2()
        Whether to enable HTTP2. It requires Prometheus >= v2.41.0
      • setEnableHTTP2

        public void setEnableHTTP2​(Boolean enableHTTP2)
        Whether to enable HTTP2. It requires Prometheus >= v2.41.0
      • getFilters

        public List<Filter> getFilters()
        Filters can be used optionally to filter the instance list by other criteria. Available filter criteria can be found here: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html Filter API documentation: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Filter.html It requires Prometheus >= v2.3.0
      • setFilters

        public void setFilters​(List<Filter> filters)
        Filters can be used optionally to filter the instance list by other criteria. Available filter criteria can be found here: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html Filter API documentation: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Filter.html It requires Prometheus >= v2.3.0
      • getFollowRedirects

        public Boolean getFollowRedirects()
        Configure whether HTTP requests follow HTTP 3xx redirects. It requires Prometheus >= v2.41.0
      • setFollowRedirects

        public void setFollowRedirects​(Boolean followRedirects)
        Configure whether HTTP requests follow HTTP 3xx redirects. It requires Prometheus >= v2.41.0
      • getNoProxy

        public String getNoProxy()
        `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names that should be excluded from proxying. IP and domain names can contain port numbers.


        It requires Prometheus >= v2.43.0, Alertmanager >= v0.25.0 or Thanos >= v0.32.0.

      • setNoProxy

        public void setNoProxy​(String noProxy)
        `noProxy` is a comma-separated string that can contain IPs, CIDR notation, domain names that should be excluded from proxying. IP and domain names can contain port numbers.


        It requires Prometheus >= v2.43.0, Alertmanager >= v0.25.0 or Thanos >= v0.32.0.

      • getPort

        public Integer getPort()
        The port to scrape metrics from. If using the public IP address, this must instead be specified in the relabeling rule.
      • setPort

        public void setPort​(Integer port)
        The port to scrape metrics from. If using the public IP address, this must instead be specified in the relabeling rule.
      • getProxyConnectHeader

        public Map<String,​List<io.fabric8.kubernetes.api.model.SecretKeySelector>> getProxyConnectHeader()
        ProxyConnectHeader optionally specifies headers to send to proxies during CONNECT requests.


        It requires Prometheus >= v2.43.0, Alertmanager >= v0.25.0 or Thanos >= v0.32.0.

      • setProxyConnectHeader

        public void setProxyConnectHeader​(Map<String,​List<io.fabric8.kubernetes.api.model.SecretKeySelector>> proxyConnectHeader)
        ProxyConnectHeader optionally specifies headers to send to proxies during CONNECT requests.


        It requires Prometheus >= v2.43.0, Alertmanager >= v0.25.0 or Thanos >= v0.32.0.

      • getProxyFromEnvironment

        public Boolean getProxyFromEnvironment()
        Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).


        It requires Prometheus >= v2.43.0, Alertmanager >= v0.25.0 or Thanos >= v0.32.0.

      • setProxyFromEnvironment

        public void setProxyFromEnvironment​(Boolean proxyFromEnvironment)
        Whether to use the proxy configuration defined by environment variables (HTTP_PROXY, HTTPS_PROXY, and NO_PROXY).


        It requires Prometheus >= v2.43.0, Alertmanager >= v0.25.0 or Thanos >= v0.32.0.

      • getProxyUrl

        public String getProxyUrl()
        `proxyURL` defines the HTTP proxy server to use.
      • setProxyUrl

        public void setProxyUrl​(String proxyUrl)
        `proxyURL` defines the HTTP proxy server to use.
      • getRefreshInterval

        public String getRefreshInterval()
        RefreshInterval configures the refresh interval at which Prometheus will re-read the instance list.
      • setRefreshInterval

        public void setRefreshInterval​(String refreshInterval)
        RefreshInterval configures the refresh interval at which Prometheus will re-read the instance list.
      • getRegion

        public String getRegion()
        The AWS region.
      • setRegion

        public void setRegion​(String region)
        The AWS region.
      • getRoleARN

        public String getRoleARN()
        AWS Role ARN, an alternative to using AWS API keys.
      • setRoleARN

        public void setRoleARN​(String roleARN)
        AWS Role ARN, an alternative to using AWS API keys.
      • getSecretKey

        public io.fabric8.kubernetes.api.model.SecretKeySelector getSecretKey()
        EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. The IAM credentials used must have the ec2:DescribeInstances permission to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config


        The EC2 service discovery requires AWS API keys or role ARN for authentication. BasicAuth, Authorization and OAuth2 fields are not present on purpose.

      • setSecretKey

        public void setSecretKey​(io.fabric8.kubernetes.api.model.SecretKeySelector secretKey)
        EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. The IAM credentials used must have the ec2:DescribeInstances permission to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config


        The EC2 service discovery requires AWS API keys or role ARN for authentication. BasicAuth, Authorization and OAuth2 fields are not present on purpose.

      • getTlsConfig

        public SafeTLSConfig getTlsConfig()
        EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. The IAM credentials used must have the ec2:DescribeInstances permission to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config


        The EC2 service discovery requires AWS API keys or role ARN for authentication. BasicAuth, Authorization and OAuth2 fields are not present on purpose.

      • setTlsConfig

        public void setTlsConfig​(SafeTLSConfig tlsConfig)
        EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. The private IP address is used by default, but may be changed to the public IP address with relabeling. The IAM credentials used must have the ec2:DescribeInstances permission to discover scrape targets See https://prometheus.io/docs/prometheus/latest/configuration/configuration/#ec2_sd_config


        The EC2 service discovery requires AWS API keys or role ARN for authentication. BasicAuth, Authorization and OAuth2 fields are not present on purpose.

      • getAdditionalProperties

        public Map<String,​Object> getAdditionalProperties()
      • setAdditionalProperty

        public void setAdditionalProperty​(String name,
                                          Object value)
      • setAdditionalProperties

        public void setAdditionalProperties​(Map<String,​Object> additionalProperties)