[ Kube 54 ] Istio Traffic Management - Request Routing Part 1

Поделиться
HTML-код
  • Опубликовано: 25 ноя 2024

Комментарии • 40

  • @nevink3123
    @nevink3123 4 года назад +1

    Thank you Venkat. Awesome video. Crisp and clear. You are an excellent teacher. Last couple of days I am searching on how to implement this. Thanks once again...

  • @srinathvr9019
    @srinathvr9019 5 лет назад +1

    Excellent as usual :)

  • @anilg7915
    @anilg7915 5 лет назад +1

    Nice one Venkat.Thank you.

  • @LeoWedsLeo
    @LeoWedsLeo 5 лет назад +2

    Nice Venkat...Can u make a video on Istio telemetry like for example if some one want to track request count by service and response times by service how can we do that and how to scrape this telemetry and store it to some persistent store...and a video on Istio jwt token validation and how can we extract and forward headers from the jwt token

    • @justmeandopensource
      @justmeandopensource  5 лет назад +2

      Hi Rajiv, thanks for watching. I will see if I can try those. Istio already comes with Prometheus so it can be used as the persistent store.

  • @Wild_Leopard
    @Wild_Leopard 3 года назад +1

    perfect & cool

  • @janardhanm6402
    @janardhanm6402 2 года назад

    Hai this is Janardhan, I have lot-of confusion in these Topics Like Virtual-service and Destination rules one more is Istio-Gateway make one video combined

  • @vamshinallagonda240
    @vamshinallagonda240 4 года назад +3

    Hi Venkat, I have a doubt,what is the use of istio here, we can do similar application without istio also right.
    What if we don't use istio, is it mandatory?

    • @justmeandopensource
      @justmeandopensource  4 года назад +2

      Hi Vamshi, thanks for watching. This particular demo shows the ability to route request to specific versions of your microservice running in your cluster. Like specifying what percentage of traffic goes to a particular version of your deployment. May I ask you how you can achieve the stuff I have shown in this video without Istio or anyother specialty tools with just Kubernetes core tools?
      Cheers.

  • @megalithmarlin1892
    @megalithmarlin1892 2 года назад

    Hi venkat i have a query : on a high traffic of 1000 tps istio always provide 15s timeout. wheather i set the timeout on virtual service

  • @ahmedelswafy1671
    @ahmedelswafy1671 5 лет назад +3

    hi
    can you explain canary deploy Kubernetes

    • @justmeandopensource
      @justmeandopensource  5 лет назад +1

      Hi Ahmd, thanks for watching this video. Although I haven't mentioned the word Canary, I think I have covered the concept in this video and the part 2 of this video.
      Basically, canary deployment is about rolling out your changes to small subset of your audience and then gradually increasing the percentage.
      So you have v1 of your application serving the entire traffic. You deploy v2 of the application. Now to follow canary deployment, you can do this. Use request routing to route 5% of the traffic to v2 of the application and 95% to v1. So this is a form of testing without impacting the entire audience. If v2 has problems only those 5% traffic going to v2 will be affected. You can quickly undeploy and fix the application.
      Then you will gradually increase the percentage of traffic to v2 and reduce traffic to v1.
      Other scenario would be, based on users. You can route v2 traffic to only certain group of people based on the request headers. This is basically canary deployment. And I have covered it in this video and the next part.
      Thanks.

    • @ahmedelswafy1671
      @ahmedelswafy1671 5 лет назад +2

      ​@@justmeandopensource i know you haven't mentioned it in this video, I want new vide about canary if possible :)

    • @justmeandopensource
      @justmeandopensource  5 лет назад +3

      @@ahmedelswafy1671 okay. Next video might give additional details. Thanks.

  • @sudeshnab1
    @sudeshnab1 4 года назад

    I am looking for data model provided by Istio (e.g. service dependency, service affinity, incoming traffic and utgoing traffic win an CSV file). Could you suggest me ?

  • @SachithNalakaMuhandiram
    @SachithNalakaMuhandiram 4 года назад

    I have a problem with istio mesh. I have deployed simple applications to K8, but interservice communication takes 5 to 15ms.
    Any idea how to debug the issue?
    I tried to do tcpdump to metallb IP address. But no packet matched

  • @sergeil6079
    @sergeil6079 5 лет назад +1

    Hi Venkat. Thanks for the great tutorials.
    Could you please help with retries functionality. Just can't make it work.
    retries:
    attempts: 10
    perTryTimeout: 2s
    retryOn: 5xx
    It was applied and I see it in Kiali. But no time delay on curl requests when the backends unavailable (503). I expected the delay of minimum 2 sec.

    • @justmeandopensource
      @justmeandopensource  5 лет назад +2

      Hi Sergey, thanks for watching. How did you test this? You have this config in your VirtualService and I assume you stopped the backend service to test the 503 error. The request will try to connect 10 times after the initial failure. PerTryTimeout, I believe is only applicable when the backend service is available but not responding due to some overload. Since your backend service is not available it returns immediately.
      istio.io/docs/concepts/traffic-management/#retries

    • @sergeil6079
      @sergeil6079 5 лет назад +1

      @@justmeandopensource Thank you very much. You were right, it works. But I needed proof. So I did the following. Made two pods working: one replied with 200 and another with 503 (removed all probes to prevent restarting). Without "retries" they were hit about 50/50. But when I switched on "replies" with only 1 value the result was always 200.

    • @justmeandopensource
      @justmeandopensource  5 лет назад +1

      @@sergeil6079 Cool.

  • @sudeshnab1
    @sudeshnab1 4 года назад

    Great video. Thanks . Can we extract dashboard data from Kiali or Grafana? Kiali dashboard is very interesting and I want to extract the data in CSV file. Is there any option? Please suggest.

  • @shreyastote2093
    @shreyastote2093 4 года назад

    Hi Venkat, thank you so much for awesome video series. I have couple of questions . would like to know your views on it.
    I am using Istio-1.5 and 1.6.
    1. Can we automate Istio with Terraform? if yes how I can start with it.
    2. Can we get all the functionality of ALB ingress in Istio or simply we use it instead of ALB ingress.

    • @justmeandopensource
      @justmeandopensource  4 года назад

      Hi Shreyas, thanks for watching. In terms automating Istio, what is it exactly that you are trying to do? There are two parts. One is the istio installation which you can do via terraform. And then creating istio kubernetes resources and managing it for the application that you deploy. Again this can also be automated, managed through Terraform as normal kubernetes resources.
      I guess you still need ALB and Istio and can't use one over the other.

    • @shreyastote2093
      @shreyastote2093 4 года назад

      @@justmeandopensource Hi Venkat, thanks for your reply, I want to achieve both the things (Istio Installation and Istio Kubernetes resources and management) with Terraform . Kindly let me know how could I do that.. any references or any suggestion will be really helpful for me. I tried with this command "istioctl manifest generate -f manifest.yaml" and then call all the yaml files via Terraform but the issue I was facing is when we run terraform destroy it's not deleting all the resources of Istio and which is creating conflicts when applying next time. I am using null resources when=destroy in Terraform for it.

  • @sarfarazshaikh
    @sarfarazshaikh 4 года назад

    Hi sir can you provide some deep knowledge on Istio Gateway and VirtualService.

    • @justmeandopensource
      @justmeandopensource  4 года назад

      Hi Sarfaraz, thanks for watching. I think I have covered it on my earlier videos. Here are the links from official documentation.
      Istio VirtualService
      istio.io/docs/reference/config/networking/virtual-service/
      Gateway
      istio.io/docs/reference/config/networking/gateway/
      Cheers

  • @IshanRakitha
    @IshanRakitha 5 лет назад

    Hi Venkad, I'm testing istio in Digital ocean infrastructure and i was able to set it up as per your instructions. System is up and running. But i'm unable to connect to my app via the istio-ingress-gateway.
    Grafana is accessible via the load balancer. Please advise. Appreciate your support in advance.
    pastebin.com/LHkfAyDE
    I'm not sure about the gateway / virtual service.

    • @justmeandopensource
      @justmeandopensource  5 лет назад +1

      Hi Ishan, thanks for watching.
      Istio ingress gateway service is a Load Balancer type service by default. Did you get a load balancer ip for this service? I am not sure about Digital Ocean as I haven't used their infrastructure.

    • @IshanRakitha
      @IshanRakitha 5 лет назад

      @@justmeandopensource Thanks for the reply. Issue was in the virtual service.

    • @IshanRakitha
      @IshanRakitha 5 лет назад

      on istio-ingressgateway provisioning, load balancer is created on Digital Ocean.

    • @justmeandopensource
      @justmeandopensource  5 лет назад

      @@IshanRakitha So what you get when you open the loadbalancer ip in web browser?

    • @IshanRakitha
      @IshanRakitha 5 лет назад +1

      @@justmeandopensource Now it routes properly. I'm pointing multiple services to multiple sub domains.