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

Make the helm chart more standard #370

Closed
chevdor opened this issue Aug 16, 2021 · 2 comments
Closed

Make the helm chart more standard #370

chevdor opened this issue Aug 16, 2021 · 2 comments

Comments

@chevdor
Copy link
Contributor

chevdor commented Aug 16, 2021

While reviewing #368, I noticed a few point that I gathered here.

  • indeed, docker-compose seems to be working fine
  • While testing the helm chart, I noticed that the current version has quite some strong requirements on an existing infra (See affinity for instance). I see that many sections have been commented out, IMO affinity can be present but should also be commented out by default
  • Most defaults in values.yaml are really parity specifc
  • I don't have a LoadBalancer in my cluster. It is quite easy to pass values so the shard service uses NodePort. Setting this as default, may allow more users to have it work right away.
  • after fixing the above, almost everything started fine expect an issue with the readiness probe of the frontend: Readiness probe failed: Get "http://10.244.0.184:8000/": dial tcp 10.244.0.184:8000: connect: connection refused and the frontend is stuck in a crash loop. This issue is due to the fact that I switched to a NodePort but the template only considers targetPort so the 2 probes are testing on the wrong port. A quick fix is to adjust the targetPort that makes it a bit hacky
  • IMO value.yml should work for a "neutral" cluster such as a brand new minikube. We could have a value-parity.yml in the repo for our infra but that may not be the ideal location for such a file
  • In the same line I think the frontend could be exposed as NodePort by default

After fixing the above, I could install the chart. However, my http requests to frontend and shard failed from outside the cluster. A curl from inside the cluster from a test pod did repond though.

So here is my test setup:

  • comment out the affinity section
  • change the service values as shown below
service:
  shard:
    type: NodePort
    port: 80
    targetPort: 80
    nodePort: 30666
    annotations:
      external-dns.alpha.kubernetes.io/hostname: submit.telemetry.parity-stg.parity.io.
  core:
    type: ClusterIP
    port: 80
    targetPort: 8000
    annotations: {}
    #  cloud.google.com/load-balancer-type: Internal
    #  networking.gke.io/internal-load-balancer-allow-global-access: "true"
    #  external-dns.alpha.kubernetes.io/hostname: feed.telemetry.parity-stg.parity.io.
  frontend:
    type: NodePort
    port: 80
    targetPort: 80
    nodePort: 30667
    annotations: {}
@chevdor chevdor changed the title Improve helm chart Make the helm chart more standard Aug 16, 2021
@chevdor
Copy link
Contributor Author

chevdor commented Aug 16, 2021

See also #369

@chevdor
Copy link
Contributor Author

chevdor commented Aug 23, 2021

I am closing this issue as there is now a new location where the issue will be better tracked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant