OpenLiberty / guide-istio-intro

A guide on how to manage microservice traffic with Istio using blue-green deployment as an example: https://openliberty.io/guides/istio-intro.html
Other
8 stars 9 forks source link

Peer review #1

Closed Kubik42 closed 6 years ago

Kubik42 commented 6 years ago

Pre-everything

General/other

What you’ll learn

What is Istio?

Why use Istio?

Prerequisites

Starting and preparing your cluster for Deployment

Deploying version 1 of the services to cluster

Modify and deploy version 2 of the service

Configure request routing

Testing microservices that are running on Kubernetes

Results :

Tests run: 3, Failures: 0, Errors: 0, Skipped: 0


- [x] `inventory/pom.xml` contains a profile called `setup-tests` which starts the system service. This was probably left in from another guide.

**Conclusions**

- [x] add a section after the tests that explains how to teardown everything: chart release, minikube, etc.

**Great work! You’re done!**

- [x] typo: "to" -> "two"
- [x] "You have deployed to services to Kubernetes and routed requests to different versions of the inventory service based on http headers." -> "You have just deployed two microservice to a Kubernetes clutster and created routing rules to route between two different version of one of the microservice using Istio." or something like that.
proubatsis commented 6 years ago

@Kubik42 I updated the guide based on your feedback and checked off the boxes that I completed, but I have some questions/concerns about some of the feedback.


can you combine windows and unix commands into a single listing block? You can add comments about the commands to specify what platform they are meant for

@evelinec was against this... can you verify how you want this to be displayed please @evelinec ?


If you observe any errors, run the command one more time and it should succeed without any errors." -> this is kind of weird. Does the command fail often on its first try? Is there a reason why? Is there a workout/way to avoid this problem?

~This issue happens roughly 20% of the time I'd say.~ No longer an issue, I'll remove this from the guide.


Separate docker images into its own listing block so its easier to see and copy. Separate kubectl get deployments into its own listing block so its easier to see and copy.

Why would the user want to copy command output?


Users might not have curl available. Can they just visit that URL in a regular browser tab?

No, but they could use postman instead: https://www.getpostman.com/


Remove the block comments from the test listing block. You can do this by surrounding the comments in tags and then excluding those tags in the adoc.

I don't really understand, can you elaborate please?


Break down each test case that you added.

Don't I already do this?


Why repeat the tests three times? Does routing not always work? Is routing inconsistent? Thats really weird if it is.

I explained it, is it unclear?

Kubik42 commented 6 years ago

Why would the user want to copy command output?

you have mark command output with role="no_copy" to make them uncopiable


No, but they could use postman instead: https://www.getpostman.com/

ok


I don't really understand, can you elaborate please?

in you listing block, you can see the comments above the methods:

screen shot 2018-07-04 at 11 22 24 am

You can remove these by adding tags to your file and then removing those tags in your include statement in your adoc.


Don't I already do this?

I meant make it more clear. For example, "The lol() test case verifies..." for each test case that you have.


I explained it, is it unclear?

I know that you did, but it seems weird to me that this is necessary. Are you saying the routing rules may not always work? If you're demonstrating how something is done, it should work, so there is not need to rerun the test multiple times.

proubatsis commented 6 years ago

@evelinec Can you confirm if you want the unix/windows blocks split up, or if you want them together with a comment to distinguish them?

Kubik42 commented 6 years ago

Just last few bits:

evelinec commented 6 years ago

Re question about having unix/windows blocks split up, or having them together with a comment to distinguish them. Confirmed with @proubatsis that these commands are copy-able and user needs to run them. For that, I'd prefer them being split up for ease of use.

proubatsis commented 6 years ago

@Kubik42 I fixed the inconsistency in the pom file, I also fixed all the issues you brought up. Can you verify that all of your concerns have been addressed please?

Kubik42 commented 6 years ago

Here are my final comments:

Why use Istio?

Starting and preparing your cluster for Deployment

Deploying version 1 of the services to cluster

Configure request routing

Can you also address the last three points in my previous comment?

proubatsis commented 6 years ago

@Kubik42 https://github.com/OpenLiberty/draft-guide-istio/commit/d965c00a1afcc0579e1188a764693568d05b06e7

Kubik42 commented 6 years ago

Looks good!