- Kubernetes 1.4+
- kubectl 1.4+
- Helm 3+ (only for Mongo/Redis)
- Nginx(latest stable version) installed and configured for Ingress usage
- Customize mongodb.yaml and redis.yaml according to your needs.
- Install Redis and/or MongoDB using
./flowmanager_helper.sh -m
for MongoDB
./flowmanager_helper.sh -r
for Redis - Create the TLS secret for your domain using:
kubectl create secret tls tls --cert=path/to/cert/file --key=path/to/key/file -n <NAMESPACE>
- Copy your license to the root folder or run the following command in order to create the secret:
kubectl create secret generic flowmanager-license --from-file=license.xml -n <NAMESPACE>
- Generate the certificates and secrets using:
./flowmanager_helper.sh -gc
- Customize patch.yml and ingress.yml for FM MultiNode and/or patch.yml and ingress.yml for FM SingleNode and Secret Env file
- Install Flow Manager:
./flowmanager_helper.sh -fm-s
for FM SingleNode
./flowmanager_helper.sh -fm-m
for FM MultiNode
Deploy using standard Kubernetes deployment manifest files.
- Kubernetes 1.4+
- kubectl 1.4+
- Customer certificates and password
- Customer license
- Mongodb URL
user
andpassword
for Mongodb- Nginx(latest stable version) installed and configured for Ingress usage
- License
kubectl create secret generic flowmanager-license --from-file=license.xml
- UI
kubectl create secret generic flowmanager-httpskeystore --from-file=uicert.p12
- Governance
kubectl create secret generic flowmanager-governance --from-file=governanceca.p12
Warning: Each files used from this step we need to be update the Deployment file
Inside the file secret-env.yml
Updating each values for the keys related:
FM_GENERAL_ENCRYPTION_KEY: ""
FM_HTTPS_KEYSTORE_PASSWORD: ""
FM_CFT_SHARED_SECRET: ""
FM_DATABASE_USER_NAME: ""
FM_DATABASE_USER_PASSWORD: ""
FM_GOVERNANCE_CA_PASSWORD: ""
Example with mongodb user/password:
# For mongodb user
$ echo -n 'mongdb_user' | base64
bW9uZ2RiX3VzZXI=
# Changing the value for the key
FM_DATABASE_USER_NAME: "bW9uZ2RiX3VzZXI="
# For mongodb password
$ echo -n 'mongdb_password' | base64
bW9uZ2RiX3Bhc3N3b3Jk
# Changing the value for the key
FM_DATABASE_USER_PASSWORD: "bW9uZ2RiX3Bhc3N3b3Jk"
Files to check and modify:
- Deployment file: SingleNode or MultiNode
- Secret Env file
This stuff permit to deploy only Flowmanager 1 node
- Creating manually all secrets for the licence and certificates
- Editing manually the yaml file for parameters needed or madatory for the customer
- Applying all the files ex:
kubectl apply -k ./singlenode
kubectl delete -k ./singlenode