I'm deploying WSO2 APIM on Kubernetes using the pattern-2 described on the github page https://github.com/wso2/kubernetes-apim. However was not able to understand why we have 2 different folders for the publisher-store-trafficManager node that has the exact same configuration (apim-pub-store-tm-1 and apim-pub-store-tm-2).
Had the same problem understanding the services used for these 2 instances (wso2apim-pub-store-tm-1-service.yaml and wso2apim-pub-store-tm-2-service.yaml).
Can I just use one instance and scale that one? if not, why we need this approach?
thanks in advance.
This is due to the traffic manager profile. If you opt the traffic manager(TM) profile, then you can scale. For the TM, data is published via thrift protocol and with the current implementation, you cannot load balance between two TM nodes. Therefore you need to use point to point connection to the TM nodes. The thrift session is not shared among the TM servers. Hence you need to have a separate service per TM node.