@@ -44,7 +44,8 @@ Memphis is cloud-native and cloud-agnostic to any Kubernetes on **any cloud**.
44
44
Production-grade Memphis with three memphis brokers configured in cluster-mode
45
45
46
46
``` bash
47
- helm repo add memphis https://k8s.memphis.dev/charts/ --force-update && helm install memphis memphis/memphis --set global.cluster.enabled=" true" --create-namespace --namespace memphis --wait
47
+ helm repo add memphis https://k8s.memphis.dev/charts/ --force-update &&
48
+ helm install memphis memphis/memphis --set global.cluster.enabled=" true" --create-namespace --namespace memphis --wait
48
49
```
49
50
50
51
** Dev**
@@ -56,6 +57,8 @@ helm repo add memphis https://k8s.memphis.dev/charts/ --force-update &&
56
57
helm install memphis memphis/memphis --create-namespace --namespace memphis --wait
57
58
```
58
59
60
+ For more information, please visit the [ Memphis Documentation] ( https://docs.memphis.dev/memphis/open-source-installation/kubernetes/1-installation ) .
61
+
59
62
#### Helm deployment options
60
63
61
64
| Option | Description | Default Value | Example |
@@ -114,12 +117,11 @@ helm install memphis memphis/memphis --create-namespace --namespace memphis --wa
114
117
| restGateway.enabled | ** \* Optional\* ** <br >Memphis Rest Gateway can be disabled if not in use | "true" | "false" |
115
118
| restGateway.jwtSecret | ** \* Optional\* ** <br >Manual Jwt Token configurtion | "" | "" |
116
119
| restGateway.refreshJwtSecret | ** \* Optional\* ** <br >Manual Refresh Jwt Token configurtion | "" | "" |
117
-
120
+ | auth.enabled | ** \* Optional\* ** <br >Enable initial configuration import | "false" | "true" |
121
+ | auth.enabled.mgmt | ** \* Optional\* ** <br >Management users that will be created at first deployment | "" | "" |
122
+ | auth.enabled.client | ** \* Optional\* ** <br >Client users that will be created at first deployment | "" | "" |
118
123
Here is how to run an installation command with additional options -  ;
119
124
120
- ```
121
- helm install memphis --set cluster.replicas=3,memphis.creds.rootPwd=rootpassword" memphis/memphis --create-namespace --namespace memphis
122
- ```
123
125
124
126
### Deployed pods
125
127
@@ -130,98 +132,6 @@ helm install memphis --set cluster.replicas=3,memphis.creds.rootPwd=rootpassword
130
132
131
133
For more information on each component, please head to the [ architecture section] ( ../../memphis/architecture.md#key-components ) .
132
134
133
- ## Deploy Memphis with TLS (encrypted communication via SSL)
134
-
135
- ### 0. Optional: Create self-signed certificates
136
-
137
- a) Generate a self-signed certificate using ` mkcert `
138
-
139
- ``` bash
140
- $ mkcert -client \
141
- -cert-file memphis_client.pem \
142
- -key-file memphis-key_client.pem \
143
- " 127.0.0.1" " localhost" " *.memphis.dev" ::1 \
144
-
145
- ```
146
-
147
- b) Find the ` rootCA `
148
-
149
- ```
150
- $ mkcert -CAROOT
151
- ```
152
-
153
- c) Create self-signed certificates for client
154
-
155
- ``` bash
156
- $ mkcert -client -cert-file client.pem -key-file key-client.pem localhost ::1
157
- ```
158
-
159
- ### 1. Create namespace + secret for the TLS certs
160
-
161
- a) Create a dedicated namespace for memphis
162
-
163
- ``` bash
164
- kubectl create namespace memphis
165
- ```
166
-
167
- b) Create a k8s secret with the required certs
168
-
169
-
170
- ``` bash
171
- kubectl create secret generic memphis-client-tls-secret \
172
- --from-file=memphis_client.pem \
173
- --from-file=memphis-key_client.pem \
174
- --from-file=rootCA.pem -n memphis
175
- ```
176
-
177
- ``` yaml
178
- tls :
179
- secret :
180
- name : memphis-client-tls-secret
181
- ca : " rootCA.pem"
182
- cert : " memphis_client.pem"
183
- key : " memphis-key_client.pem"
184
- ` ` `
185
-
186
- ### 2. Deploy Memphis with the generated certificate
187
-
188
- ` ` ` bash
189
- helm install memphis memphis \
190
- --create-namespace --namespace memphis --wait \
191
- --set \
192
- global.cluster.enabled="true",\
193
- memphis.tls.verify="true",\
194
- memphis.tls.cert="memphis_client.pem",\
195
- memphis.tls.key="memphis-key_client.pem",\
196
- memphis.tls.secret.name="memphis-client-tls-secret",\
197
- memphis.tls.ca="rootCA.pem"
198
- ```
199
-
200
- ## Upgrade existing deployment
201
-
202
- ### For adding TLS support
203
-
204
- 1 . Create a k8s secret with the provided TLS certs
205
-
206
- ```
207
- kubectl create secret generic memphis-client-tls-secret \
208
- --from-file=memphis_client.pem \
209
- --from-file=memphis-key_client.pem \
210
- --from-file=rootCA.pem -n memphis
211
- ```
212
-
213
- 2 . Upgrade Memphis to use the TLS certs
214
-
215
- ``` bash
216
- helm upgrade memphis memphis -n memphis --reuse-values \
217
- --set \
218
- memphis.tls.verify=" true" ,\
219
- memphis.tls.cert=" memphis_client.pem" ,\
220
- memphis.tls.key=" memphis-key_client.pem" ,\
221
- memphis.tls.secret.name=" tls-client-secret" ,\
222
- memphis.tls.ca=" rootCA.pem"
223
- ```
224
-
225
135
## Deployment diagram
226
136
227
137
![ Memphis Architecture (1)] ( https://user-images.githubusercontent.com/70286779/229374721-963cd3e6-e425-44cd-8467-233e6fc5e680.jpeg )
0 commit comments