* Remove self-links with domain names in docs Fixes #4191. Skipping the tutorials we import from kubernetes/examples. Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com> * update federation/index.md user-guide links * update assign-pod-node.md links * update dns-pod-service.md link * update link in jobs-run-to-completion.md * update link in minikube.md * update PS link in minikube.md * update links in stackpoint.md * update links in storage.md * fix link in vsphere.md * fix links in deprecation-policy.md * Update pick-right-solution.md * Update web-ui-dashboard.md * Update ingress.md * Update federation-service-discovery.md * Update user-guide.md * Update expose-external-ip-address.md * Update README.md * Update README.md
2.3 KiB
title
| title |
|---|
| Local Kubernetes development with LXD |
{% capture overview %} Running Kubernetes locally has obvious development advantages, such as lower cost and faster iteration than constantly deploying and tearing down clusters on a public cloud. Ideally, a Kubernetes developer can spawn all necessary nodes inside local containers and test new configurations as they are committed. This page will show you how to deploy a cluster to LXD containers on a local machine. {% endcapture %}
The purpose of using LXD on a local machine is to emulate the same deployment that a user would use in a cloud or bare metal. Each node is treated as a machine, with the same characteristics as production. Each node is a separate container, which runs Docker containers and kubectl inside (see Cluster Intro for more info).
{% capture prerequisites %} Install conjure-up, a tool for deploying big software.
sudo snap install conjure-up --classic
Note: If conjure-up asks you to "Setup an ipv6 subnet" with LXD, answer NO. ipv6 with Juju/LXD is currently unsupported. {% endcapture %}
{% capture steps %}
Deploying Kubernetes
Start the deployment with:
conjure-up kubernetes
For this walkthrough we are going to create a new controller - select the localhost Cloud type:
Deploy the applications:
Wait for Juju bootstrap to finish:
Wait for our Applications to be fully deployed:
Run the final post-processing steps to automatically configure your Kubernetes environment:
Review the final summary screen:
Accessing the Cluster
You can access your Kubernetes cluster by running the following:
kubectl --kubeconfig=~/.kube/config
Or if you've already run this once it'll create a new config file as shown in the summary screen.
kubectl --kubeconfig=~/.kube/config.conjure-up
{% endcapture %}
{% include templates/task.md %}





