-
Notifications
You must be signed in to change notification settings - Fork 306
Local Process with Kubernetes (Preview) is now available in Visual Studio 2019 and Visual Studio Code #341
Comments
This is provided the Kubernetes cluster that the development computer tries to connect is accessible from the public network? |
Hi @anandthanu In theory, if you are able to execute kubectl commands from the bastion host, Local Process with Kubernetes should work. Local Process with Kubernetes is now publicly available and I'm interested in hearing how this goes for your scenario. Please keep me posted and/or feel free to reach out to me directly via email with any further questions. |
Hello, This seems to look very promising since we were often having issues with quickly getting development up and running with DevSpaces. However I have a few questions regarding working with multiple persons and their respective child spaces. How is traffic routed when we have different people redirecting traffic for multiple different services, because with the current DevSpace implementation everyone has their own child space which inherits services from the parent-space. This made it so we aren't blocking each other. I currently am unable to see parent-space services to redirect traffic from when selecting a child-space. Is there something I am missing or is this something that still needs to be considered? Thanks in advance. |
It's a good question, and you're correct - in this preview Local Process with Kubernetes won't facilitate the creation of a child space and deploying your service to that new space. As a workaround; In your existing Dev Space enabled AKS cluster you can use Local Process with Kubernetes to work on an existing service deployed in a child namespace. |
Just a heads-up The link to "How to use Local Process with Kubernetes in Visual Studio 2019" is not working. I think is should be redirected to |
Thanks for pointing it out. I've fixed our short link to the page now. https://aka.ms/localprocesswithk8s-vs |
Is it possible to use local process in non-VS environments? In particular JetBrains Rider would be lovely, but I'm happy with running from terminal as well. |
Hi @ahaeber - we're currently focussing on the two VS environments, but we have it on the backlog to start looking at other IDE's. |
Is it possible to use Local Process with Kubernetes in Visual Studio 2019 in combination with kubernetes from Docker Desktop? It would be nice that it would support generic kubernetes cluster like k3d/k3s/k8s and not having the requirement of using an azure account ( read: vendor lockin) |
Hi @luckyluc74 We are working through supporting non-AKS clusters in our new “Local Process with Kubernetes” experiences. We don't yet have dates for when this will be supported, but it’s at the top of our backlog. The emphasis of this work initially is to provide a seamless experience on local/on-prem clusters. |
Hi @Gordonby Thanks for your update. Looking forward to this new “Local Process with Kubernetes” with support for non-AKS clusters. As a developer I mostly use my local (non-AKS) kubernetes cluster for developing and testing. And this feature would greatly enhance my productivity. |
Great stuff:-). Looking forward to the possibility to facilitate the creation of a child space as mentioned above. |
Yes, the improved launch configuration is very nice - we would also need 1) linux support and 2) the equivalent of the 'clone' flow from the prior version of the VS Code extension/azds cli, to get parity with what our workflow looked like in the azds connect approach. Although since we're also making use of Review Apps, we could always just start work on a branch by opening a PR to trigger a deploy of the relevant service to the PR (child) namespace, which would give us something to work with right away as a workaround. The 'clone' option was pretty slick though. Thanks again |
I have pods that make use of aad-pod-identity and a managed identity to access a keyvault for sensitive app configuration data on startup using the AddAzureKeyVault extension. The non-sensitive config data are maintained in configmaps.
|
|
Thanks @Gordonby. I'll try the yaml override and see how I go. Firstly though, can you explain how I might use the file in my situation (let me know if separate issues should be created in regards to LPK please). TL;DR My Inner-Loop... I supply a Pulumi config property to the Pulumi code to change the behaviour of the infrastructure deployment slightly. Instead of deploying HELM charts like in a CI/CD stage, the code creates Pulumi "chart" Outputs (variables accessible via Pulumi CLI tool) containing the data that would normally be passed to the HELM chart. The values.yaml essentially, albeit in json format so I have a ps1 script that can convert back to yaml. I use devspace.sh to build and deploy my inner-loop images to my dev cluster in a developer-specific k8 namespace. The "deployment" configuration in devspace.yaml directly references the previous yaml values file with no developer changes required. So essentially I can execute I imagine I'd still use this inner-loop process but debugging (via attaching in VSCode) is troublesome, especially as SourceLink support to private repos is lacking. I'd like to use VS2019 to debug if possible, and the F5 approach LPK offers is very compelling, considering it should also allow for sourcelink to work. So my goal is to build upon the scripts that I already have and just produce LPK supporting environment yaml files (with development-specific modification to bypass the managed identity issue) as part of the |
Hey @markphillips100, It might be good to create this issue properly over to our new LPK repo to keep the discussion tight. I've dropped an example of the file in our sample app : https://github.com/microsoft/mindaro/blob/master/samples/BikeSharingApp/ReservationEngine/KubernetesLocalProcessConfig.yaml |
Hi. I am getting an error now. It worked OK before summer. Logging handled exception: Microsoft.DevSpaces.Common.Exceptions.UserVisibleException: {"Request":null,"Response":null,"RequestId":null,"ClientRequestId":null,"CorrelationRequestId":null,"Format":"Failed to deploy remote restore job for pod deployment 'test/xxx' with error: Operation returned an invalid status code 'UnprocessableEntity'","Args":[],"StackTrace":" |
Hi @kanonkanin, Thank you for reporting this issue. We are aware of it, and we'll release a fix in the coming weeks. This issue is due to one of the jobs we're trying to create that has a name too long. This job's name is a concatenation of your If this name is longer than 63 characters, then we get this UnprocessableEntity error. Are you working on VS Code and using the isolation feature? If yes, please consider updating your On a side note, if you have other issues related to Local Process with Kubernetes, could you please open them in https://github.com/Microsoft/mindaro ? This is where we're tracking such issues now. |
I have tried to use local process but cant get it to list namespaces, i can list them in kubectl but in visual studio it gives me a permissions error.
|
Hi @rmcfarlane82, |
@rmcfarlane82 > Unfortunately, this seems to be a different issue compared to the one I was mentioning above. In order to track this properly, I created this new issue in our Local Process with Kubernetes repository: microsoft/mindaro#26 I also added the results of our investigation so far, as well as a potential workaround (using VS Code). Could you please have a look at this and let us know if anything seems to be missing there? |
Local Process with Kubernetes (Preview)
Local Process with Kubernetes puts your development computer in the context of your Kubernetes cluster. Write, test, and debug your microservice code on your development workstation, while consuming dependencies from your cluster. Redirect traffic from the cluster to your development computer to effectively remote debug. Local Process with Kubernetes gives you the confidence of full end-to-end testing during development with the speed and flexibility of running code directly on your development computer.
Local Process with Kubernetes (Preview) is now available in both Visual Studio 2019 and Visual Studio Code.
How Local Process with Kubernetes Works
How to use Local Process with Kubernetes in Visual Studio 2019
How to use Local Process with Kubernetes in Visual Studio Code
The text was updated successfully, but these errors were encountered: