cover | coverY |
---|---|
../../../.gitbook/assets/DigitalOcean and Memphis.jpeg |
0 |
DigitalOcean simplifies cloud computing so builders can spend more time creating software that changes the world.
DigitalOcean offers easy-to-use and configure cloud services like servers, kubernetes, object storage, serverless functions, a marketplace of applications, and much more.
Memphis.dev chose DigitalOcean Kubernetes Marketplace to offer both DO and Memphis users a
1-click installation of memphis cluster in a production kubernetes environment.
- DigitalOcean account
Nodes are the servers that provide the Kubernetes compute and storage resources
Follow the below instructions to communicate with the newly created cluster
We need to create two different load balancers, one for data (the broker itself) and one for the UI.
Run the following YAML
apiVersion: v1
kind: Service
metadata:
annotations:
meta.helm.sh/release-name: memphis
meta.helm.sh/release-namespace: memphis
creationTimestamp: "2022-07-19T16:25:00Z"
finalizers:
- service.kubernetes.io/load-balancer-cleanup
labels:
app.kubernetes.io/instance: memphis
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: memphis
app.kubernetes.io/version: 1.16.0
helm.sh/chart: memphis-0.1.0
name: memphis-cluster
namespace: memphis
spec:
allocateLoadBalancerNodePorts: true
externalTrafficPolicy: Cluster
internalTrafficPolicy: Cluster
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- name: memphis-cp-management
nodePort: 30794
port: 5555
protocol: TCP
targetPort: 5555
- name: memphis-cp-tcp
nodePort: 31534
port: 6666
protocol: TCP
targetPort: 6666
- name: client
nodePort: 30363
port: 7766
protocol: TCP
targetPort: 7766
selector:
app.kubernetes.io/instance: memphis
app.kubernetes.io/name: memphis
sessionAffinity: None
type: LoadBalancer
The above will create a digitalocean load balancer with a public ip.
Run the following YAML
kubectl expose deployment memphis-ui --port=80 --target-port=80 \
--name=memphis-ui --type=LoadBalancer
To get the public IPs of the load balancers we created before, run
kubectl get svc