Sock Shop Pulumi Demo
The standard Weaveworks Sock Shop demo based on https://github.com/microservices-demo/microservices-demo
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set kubernetes-ts-sock-shopcd pulumi-examples/kubernetes-ts-sock-shopA version of the standard Sock Shop microservices reference app app using
Pulumi and @pulumi/kubernetes.
Running the App#
Follow the steps in Pulumi Installation and Setup and Configuring Pulumi Kubernetes to get setup with Pulumi and Kubernetes.
Install dependencies:
npm installCreate a new stack:
pulumi stack initEnter a stack name: testingPreview the deployment of the application:
pulumi previewPreviewing update of stack 'testing'Previewing changes:
Type Name Plan Info + pulumi:pulumi:Stack sock-shop-testing create + kubernetes:core:Service carts-db create + kubernetes:core:Service carts create + kubernetes:core:Service catalog-db create + kubernetes:core:Service catalog create + kubernetes:core:Service orders-db create + kubernetes:core:Service orders create + kubernetes:core:Service payment create + kubernetes:core:Service rabbitmq create + kubernetes:core:Service shipping create + kubernetes:core:Service user-db create + kubernetes:core:Service user create + kubernetes:core:Service front-end create + kubernetes:core:Service queue-master create + kubernetes:apps:Deployment queue-master create + kubernetes:apps:Deployment catalog-db create + kubernetes:apps:Deployment catalog create + kubernetes:apps:Deployment payment create + kubernetes:apps:Deployment rabbitmq create + kubernetes:apps:Deployment front-end create + kubernetes:apps:Deployment carts-db create + kubernetes:apps:Deployment orders-db create + kubernetes:apps:Deployment user-db create + kubernetes:apps:Deployment user create + kubernetes:apps:Deployment carts create + kubernetes:apps:Deployment orders create + kubernetes:apps:Deployment shipping create
info: 27 changes previewed: + 27 resources to createPerform the deployment:
pulumi upUpdating stack 'testing'Performing changes:
Type Name Status Info + kubernetes:core:Service carts-db created + kubernetes:core:Service carts created + kubernetes:core:Service catalog-db created + kubernetes:core:Service catalog created + kubernetes:core:Service orders-db created + kubernetes:core:Service orders created + kubernetes:core:Service payment created + kubernetes:core:Service rabbitmq created + kubernetes:core:Service shipping created + kubernetes:core:Service user-db created + kubernetes:core:Service user created + kubernetes:core:Service front-end created + kubernetes:core:Service queue-master created + kubernetes:apps:Deployment queue-master created + kubernetes:apps:Deployment catalog-db created + kubernetes:apps:Deployment catalog created + kubernetes:apps:Deployment payment created + kubernetes:apps:Deployment rabbitmq created + kubernetes:apps:Deployment front-end created + kubernetes:apps:Deployment carts-db created + kubernetes:apps:Deployment orders-db created + kubernetes:apps:Deployment user-db created + kubernetes:apps:Deployment user created + kubernetes:apps:Deployment carts created + kubernetes:apps:Deployment orders created + kubernetes:apps:Deployment shipping created
info: 27 changes performed: + 27 resources createdUpdate duration: 3m2.127835854s
Permalink: https://pulumi.com/examples/testing/updates/1The application is now deployed. Use kubectl to see the deployed services.
k get services -n sock-shopNAME CLUSTER-IP EXTERNAL-IP PORT(S) AGEcarts 10.47.242.164 <none> 80/TCP 4mcarts-db 10.47.245.60 <none> 27017/TCP 4mcatalogue 10.47.255.170 <none> 80/TCP 4mcatalogue-db 10.47.252.96 <none> 3306/TCP 4mfront-end 10.47.247.63 <nodes> 80:30001/TCP 4morders 10.47.255.197 <none> 80/TCP 4morders-db 10.47.242.209 <none> 27017/TCP 4mpayment 10.47.254.192 <none> 80/TCP 4mqueue-master 10.47.251.206 <none> 80/TCP 4mrabbitmq 10.47.254.26 <none> 5672/TCP 4mshipping 10.47.247.218 <none> 80/TCP 4muser-db 10.47.242.91 <none> 27017/TCP 4muser 10.47.242.91 <none> 27017/TCP 4m