---
title: How to set up Kubernetes with conjure-up and monitor apps with Weave
description: On August 2, Luke Marsden (Weaveworks) and Marco Ceppi (Canonical) presented
  a webinar on how to Speed up your software development lifecycle with Kubernetes.
  In the session they described how you can use conjure-up and Weave Cloud to set
  up, manage and monitor an app in Kubernetes. In this tutorial we’re going to show
  you  […]
url: https://canonical.com/blog/tutorial-set-up-kubernetes-on-any-cloud-and-monitor-apps-with-weave?format=md
---

1. [Blog](https://canonical.com/blog)
2. Article

---

[Marco Ceppi](https://canonical.com/blog/author/marcoceppi "More about Marco Ceppi")

17 August 2017

# How to set up Kubernetes with conjure-up and monitor apps with Weave

[Canonical](https://canonical.com/blog/tag/canonical)
[cloud containers](https://canonical.com/blog/tag/cloud-containers)
[containers](https://canonical.com/blog/tag/containers)
[k8s](https://canonical.com/blog/tag/k8s)
[kubernetes](https://canonical.com/blog/tag/kubernetes)
[spotlight](https://canonical.com/blog/tag/spotlight)
[Tutorial](https://canonical.com/blog/tag/tutorial)
[Weave Cloud](https://canonical.com/blog/tag/weave-cloud)
[weaveworks](https://canonical.com/blog/tag/weaveworks)

---

Share the article

On August 2, Luke Marsden (Weaveworks) and Marco Ceppi (Canonical) presented a webinar on how to [Speed up your software development lifecycle with Kubernetes](http://ubunt.eu/5rkdM3). In the session they described how you can use [conjure-up](http://conjure-up.io/) and [Weave Cloud](https://www.weave.works/product/cloud/) to set up, manage and monitor an app in Kubernetes. In this tutorial we’re going to show you how to set up Kubernetes on any cloud, the conjure-up way. Once the cluster is spun up, you’ll use Weave Cloud to deploy an application, explore the microservices and monitor the app as it runs in the cluster.

## Why Canonical & Weaveworks?

Canonical’s conjure-up makes it easy to deploy and operate Kubernetes in production, using a neat, easy-to-use CLI installer. Weave Cloud fills in the gaps missing with a Kubernetes install and provides the tools necessary for a full development lifecycle:

* **Deploy** – plug output of CI system into cluster so that you can ship features faster
* **Explore** – visualize and understand what’s happening so that you can fix problems faster
* **Monitor** – understand behavior of running system so that you can fix problems faster using Prometheus

**Weave Cloud Development Lifecycle**

## Installing Kubernetes with conjure-up

1. Use conjure-up to install Kubernetes on your cloud infrastructure (LXD provider is not currently supported by Weave Cloud)

* <https://kubernetes.io/docs/getting-started-guides/ubuntu/>

2. Run the following script to enable privileged containers & set up RBAC properly:

```
juju config kubernetes-master allow-privileged=true
juju config kubernetes-worker allow-privileged=true
juju ssh kubernetes-master/0 -- 'sudo snap set kube-apiserver
authorization-mode=RBAC'
sleep 120
juju ssh kubernetes-master/0 -- '/snap/bin/kubectl create clusterrolebinding
root-cluster-admin-binding --clusterrole=cluster-admin --user=admin &&
/snap/bin/kubectl create clusterrolebinding kubelet-node-binding
--clusterrole=system:node --user=kubelet'
```

3. Run

   ```
   export KUBECONFIG=<path-to-kubeconfig>
   ```

   find the path from e.g.

   ```
   cat ~/bin/kubectl.conjure<tab>
   ```

   You may wish to make this permanent by adding the export command to your ~/.bash\_profile or equivalent shell startup script. Once you have the environment variable in place, you can run kubectl commands against the cluster. Try it out with

   ```
   kubectl get nodes
   ```

## Connecting your conjured up cluster to Weave Cloud

4. Next you will visualize the Kubernetes cluster in Weave Cloud. Sign up for [Weave Cloud](https://cloud.weave.works). Select **Setup** **→ Kubernetes** **→ Generic Kubernetes** and then cut and paste the Kubernetes command from the Weave Cloud UI into your terminal:

**Weave Cloud Token and command location**

For example, you would run:

```
kubectl apply -n kube-system -f \ "https://cloud.weave.works/k8s.yaml?t=[CLOUD-TOKEN]&k8s-version=$(kubectl version | base64 | tr -d '\n')"
```

Where,

* **[CLOUD-TOKEN]** is the Weave Cloud token.

The cluster should now appear in Weave Cloud. Check **Explore → Hosts** to see all five hosts:

5. Deploy the Sock Shop by first creating the namespace, checking it out of Git and then changing the kubernetes deploy directory:

```
kubectl create namespace sock-shop git clone https://github.com/microservices-demo/microservices-demo cd microservices-demo kubectl apply -n sock-shop -f deploy/kubernetes/manifests
```

Now you should be able to see the Sock Shop in Weave Cloud Explore (click Controllers and select the sock-shop namespace filter from the bottom left):

And you should be able to access the shop in your browser, using the IP address of one of your Kubernetes nodes at port :30001.

Once the app is loaded, try out the Monitoring tool in Weave Cloud to observe the latencies between services in the cluster. Click ***Monitor*** and then run the following query:

```
rate(request_duration_seconds_sum[1m])/rate(request_duration_seconds_count[1m])
```

You should see all the different requests latencies for all the services in the sock shop. This is possible because the sock shop is instrumented with the [Prometheus client libraries](https://prometheus.io/docs/instrumenting/clientlibs/).

**Conclusion**

In this post, we showed you how to get from nothing to a Kubernetes cluster using [Canonical’s conjure-up](http://conjure-up.io). We then showed you how to install the Weave Cloud agents and just scratched the surface of what you can do with [Weave Cloud](http://weave.works/): monitoring the request latencies on a Prometheus-instrumented app, the sock shop.

**Next steps**

* [Watch the webinar on-demand](http://ubunt.eu/5rkdM3)
* Learn more about [Canonical Distribution of Kubernetes](https://www.ubuntu.com/containers/kubernetes)
* [Get started with Weave Cloud](https://www.weave.works/docs/) or [sign up for a free trial](https://go.weave.works/canonical-weavecloud)

## Sign up for our newsletter

Get the latest Canonical news and updates in your inbox.

Work email:

\*I agree to receive information about Canonical's
products and services.

By submitting this form, I confirm that I have read and agree to [Canonical's Privacy Policy](https://canonical.com/legal/dataprivacy).

Sign up

## Share on

---

## Related posts

[### How to set up a micro lab: four principles for a reliable homelab](https://canonical.com/blog/how-to-set-up-a-reliable-homelab)

After over a decade of running a homelab, I have learned a few difficult lessons. Although it begins as a “lab,” you inevitably end up with something you want to keep. If a...

[Jake Nabasny](https://canonical.com/blog/author/slapcat)

17 March 2026

[### Canonical partners with Snyk for scanning chiseled Ubuntu containers](https://canonical.com/blog/canonical-partners-with-snyk-for-scanning-chiseled-ubuntu-containers)

Canonical, the publisher of Ubuntu, is pleased to announce a new partnership with developer-focused cybersecurity company Snyk. Snyk Container, Snyk’s container security...

[Canonical](https://canonical.com/blog/author/canonical)

20 March 2026

[### Deploy your Spring Boot application to production](https://canonical.com/blog/deploy-spring-application-to-production)

In this article we walk through the steps required to deploy a Spring Boot application to production using Juju and Kubernetes. The goal is to showcase the integration of the...

[Javier de la Puente](https://canonical.com/blog/author/javierdelapuente)

13 January 2026

[### Harnessing the potential of 5G with Kubernetes: a cloud-native telco transformation perspective](https://canonical.com/blog/harnessing-the-potential-of-5g-with-kubernetes-a-cloud-native-telco-transformation-perspective)

Telecommunications networks are undergoing a cloud-native revolution. 5G promises ultra-fast connectivity and real-time services, but achieving those benefits requires an...

[Benjamin Ryzman](https://canonical.com/blog/author/benjaminryzman)

10 December 2025
