kmesh icon indicating copy to clipboard operation
kmesh copied to clipboard

Make it easy to install a specific version of Kmesh

Open YaoZengzeng opened this issue 1 year ago • 13 comments

What would you like to be added:

In the future, we may need a command line tool to install specific version of Kmesh with one click.

But since the project is still in its early stage, we may need some simpler methods quickly to implement this.

Why is this needed:

Until now, three versions of Kmesh has been released.

But I find there is no easy way to install specific version of Kmesh except directly modifying the image tag in the yaml.

YaoZengzeng avatar Jul 11 '24 02:07 YaoZengzeng

I can work on making a cli which will parse the specified version yaml files (from https://github.com/kmesh-net/kmesh/tree/main/deploy/yaml. replacing main with the specified version) and deploy it. Something like this:

kmesh init -v 1.0

thebigbone avatar Jul 12 '24 10:07 thebigbone

Great!

I wonder a standalone binary may be better? Similar to istioctl, which could add more peripheral functions besides installation in the future. WDYT? @hzxuzhonghu @nlgwcy

YaoZengzeng avatar Jul 13 '24 02:07 YaoZengzeng

agree with you, I think we need kmeshctl, which used to query the enabling status of the kmesh feature, traffic manage rules...

nlgwcy avatar Jul 13 '24 02:07 nlgwcy

agree with you, I think we need kmeshctl, which used to query the enabling status of the kmesh feature, traffic manage rules...

Understood. Can you list out all the necessary CLI flags? I can start with the init command if you guys give it a green light.

thebigbone avatar Jul 14 '24 07:07 thebigbone

maybe need kmeshctl dashbord prometheus to start prometheus dashboard. Refer https://github.com/istio/istio/blob/0a1dadde9dd9d7480574b0f43824e16120d86750/istioctl/pkg/dashboard/dashboard.go#L68-L95

LiZhenCheng9527 avatar Jul 15 '24 11:07 LiZhenCheng9527

Just sum up: some corse incents

  1. kmeshctl install to install kmesh
  2. kmeshctl config-dump to dump and bpf map
  3. kmeshctl xxx to setup waypoint for namespace/service/pods

Welcome to supplement more cases

hzxuzhonghu avatar Jul 16 '24 01:07 hzxuzhonghu

kmeshctl update/upgrade

LiZhenCheng9527 avatar Jul 16 '24 03:07 LiZhenCheng9527

ping @thebigbone would you like to take it

hzxuzhonghu avatar Aug 30 '24 06:08 hzxuzhonghu

ping @thebigbone would you like to take it

Yes. I can start working on it.

thebigbone avatar Sep 10 '24 05:09 thebigbone

ping @thebigbone , kmeshctl framework has been merged into master (https://github.com/kmesh-net/kmesh/tree/main/ctl) . You could implement your install subcomamnd based on it.

YaoZengzeng avatar Sep 23 '24 06:09 YaoZengzeng

@YaoZengzeng should I include the installation of istioctl in the kmeshctl install command? The same procedure which is mentioned on istio documentation: https://istio.io/latest/docs/ambient/getting-started/

thebigbone avatar Oct 23 '24 07:10 thebigbone

I don't think it's necessary. Just install Kmesh related components is enough :)

YaoZengzeng avatar Oct 23 '24 07:10 YaoZengzeng

I don't think it's necessary. Just install Kmesh related components is enough :)

Great. I will open a PR in a few hours.

thebigbone avatar Oct 23 '24 07:10 thebigbone