Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for APM server configuration #53

Closed
1 of 2 tasks
nkvoll opened this issue Nov 5, 2018 · 1 comment · Fixed by #1181
Closed
1 of 2 tasks

Support for APM server configuration #53

nkvoll opened this issue Nov 5, 2018 · 1 comment · Fixed by #1181
Assignees
Labels
>feature Adds or discusses adding a feature to the product

Comments

@nkvoll
Copy link
Member

nkvoll commented Nov 5, 2018

@pebrc pebrc added this to the Post-GA milestone Feb 8, 2019
@nkvoll nkvoll self-assigned this Mar 4, 2019
@nkvoll
Copy link
Member Author

nkvoll commented May 6, 2019

APM server resource format suggestion snapshot (WIP)

apiVersion: apm.k8s.elastic.co/v1alpha1
kind: ApmServer
metadata:
  name: apmserver-sample
spec:
  version: "6.7.0"
  nodeCount: 1

  # optional "automagic" association with elasticsearch, would auto-populate some config fields:
  # - output.elasticsearch.hosts
  # - output.elasticsearch.username
  # - output.elasticsearch.password
  # TBD (we need some work on the cloud-k8s side here):
  # - output.elasticsearch.ssl.enabled
  # - output.elasticsearch.ssl.certificate_authorities
  elasticsearch:
    inCluster:
      name: <name of es resource>
      namespace: <namespace of es resource>

  # user-provided configuration:
  config:
    name: ${POD_NAME}

    apm-server:
      host: :8200 # blacklisted?
      secret_token: ${SECRET_TOKEN_FROM_KEYSTORE} # note: requires us to integrate with the apm server keystore, TBD
      ssl:
        enabled: false # probably want "true", and self-sign a cert by default, provide ability for customers to bring their own.
      #concurrent_requests: 1
      #max_unzipped_size: 5242880
      #read_timeout: 3600
      #rum:
      #  enabled: true
      #  rate_limit: 10
      #shutdown_timeout: 30s

    logging:
      json: true
      metrics.enabled: true

    output:
      elasticsearch:
        hosts:
          - https://elasticsearch-sample-es.default.svc.cluster.local:9200
        username: elastic-internal-apm-server
        password: ${ELASTICSEARCH_PASSWORD_FROM_KEYSTORE} # note: requires us to integrate with the apm server keystore, TBD
        ssl:
          certificate_authorities:
            - config/elasticsearch-certs/ca.pem
          enabled: true
        #max_bulk_size: 267
        #worker: 5
        #compression_level: 5
    #queue:
    #  mem:
    #    events: 2000
    #    flush:
    #      min_events: 267
    #      timeout: 1s
    #setup.template.settings.index:
    #  auto_expand_replicas: 0-2
    #  number_of_replicas: 1
    #  number_of_shards: 1
    #xpack.monitoring.enabled: true

  podTemplate:
    spec:
      containers:
      - name: apm-server
        resources:
          limits:
            memory: 1Gi
            cpu: 1000m
        volumeMounts:
        - name: elasticsearch-certs
          mountPath: /usr/share/apm-server/config/elasticsearch-certs
      volumes:
      - name: elasticsearch-certs
        secret:
          secretName: elasticsearch-certs

  http:
    service:
      metadata:
        annotations:
          service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout: "60"
      spec:
        # supports automatically creating a LoadBalancer for the HTTP endpoints.
        type: LoadBalancer
    # tls settings for APM server:
    tls:
      selfSignedCertificate:
        # subjectAlternativeNames allows providing a custom set of alternative names the certificate should contain.
        subjectAlternativeNames:
          - dns: foo.example.com
          - ip: 4.3.2.1

@pebrc pebrc modified the milestones: Post-GA, Beta May 7, 2019
@pebrc pebrc removed this from the Beta milestone May 10, 2019
@pebrc pebrc added the >feature Adds or discusses adding a feature to the product label May 24, 2019
@pebrc pebrc changed the title Support for APM server Support for APM server configuration May 28, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
>feature Adds or discusses adding a feature to the product
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants