diff --git a/docker-compose/editor-worker-dashboard/README.md b/docker-compose/editor-worker-dashboard/README.md index 5f79c2c..c271d7c 100644 --- a/docker-compose/editor-worker-dashboard/README.md +++ b/docker-compose/editor-worker-dashboard/README.md @@ -6,11 +6,10 @@ Runs a pre configured Stream Processor setup with Stream Processor editor, worke * Install [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git), [Docker](https://www.docker.com/get-docker) and [Docker Compose](https://docs.docker.com/compose/install/#install-compose) in order to run the steps provided in following Quick start guide.

- * In order to run this Docker Compose setup, you will need an active [Free Trial Subscription](https://wso2.com/free-trial-subscription) - from WSO2 since the referring Docker images hosted at docker.wso2.com contains the latest updates and fixes for WSO2 Stream Processor. You can sign up for a Free Trial Subscription [here](https://wso2.com/free-trial-subscription).

+ * In order to run this Docker Compose setup, you will need an active subscription from WSO2 since the referring Docker images hosted at docker.wso2.com contains the latest updates and fixes for WSO2 Stream Processor. You can sign up for a Free Trial Subscription [here](https://wso2.com/free-trial-subscription).

* If you wish to run the Docker Compose configuration using Docker images built locally, build the Stream Processor editor, worker and dashboard images using [SP Dockerfiles](../../dockerfiles/README.md) and remove the `docker.wso2.com/` prefix - from the `image` name In the `docker-compose.yml`. For example, change the line `image: docker.wso2.com/wso2sp-manager:4.1.0`
to `image: wso2sp-manager:4.1.0`.

+ from the `image` name In the `docker-compose.yml`. For example, change the line `image: docker.wso2.com/wso2sp-manager:4.2.0`
to `image: wso2sp-manager:4.2.0`.

## How to deploy @@ -28,7 +27,7 @@ Runs a pre configured Stream Processor setup with Stream Processor editor, worke Instead, extract the zip file and directly browse to `docker-sp-docker-compose/editor-worker-dashboard` folder. > If you want to try out an already released tag, after executing 2nd step, checkout the relevant tag, - i.e. for example: git checkout tags/v4.1.0.1 and continue below steps. + i.e. for example: git checkout tags/v4.2.0.1 and continue below steps. 3. Execute the following Docker Compose command to start the deployment. ``` @@ -37,7 +36,7 @@ Runs a pre configured Stream Processor setup with Stream Processor editor, worke 4. Access management console via a web browser. ``` - For Status dashboard - https://localhost:9390/monitoring - For Editor - https://localhost:9743/editor + For Status dashboard - https://localhost:9643/monitoring + For Editor - http://localhost:9390/editor ``` diff --git a/docker-compose/editor-worker-dashboard/dashboard/deployment.yaml b/docker-compose/editor-worker-dashboard/dashboard/deployment.yaml index 9189af9..4aa1d14 100644 --- a/docker-compose/editor-worker-dashboard/dashboard/deployment.yaml +++ b/docker-compose/editor-worker-dashboard/dashboard/deployment.yaml @@ -315,6 +315,56 @@ wso2.datasources: connectionTestQuery: SELECT 1 validationTimeout: 30000 isAutoCommit: false + - name: HTTP_ANALYTICS_DB + description: The datasource used for HTTP Analytics dashboard + jndiConfig: + name: jdbc/HTTP_ANALYTICS_DB + useJndiReference: false + definition: + type: RDBMS + configuration: + jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/worker/database/HTTP_ANALYTICS_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;MVCC=TRUE;AUTO_SERVER=TRUE' + username: wso2carbon + password: wso2carbon + driverClassName: org.h2.Driver + maxPoolSize: 50 + idleTimeout: 60000 + connectionTestQuery: SELECT 1 + validationTimeout: 30000 + isAutoCommit: false + - name: Twitter_Analytics + description: The datasource used for Twitter Analytics dashboard + jndiConfig: + name: jdbc/Twitter_Analytics + useJndiReference: false + definition: + type: RDBMS + configuration: + jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/worker/database/Twitter_Analytics;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;MVCC=TRUE;AUTO_SERVER=TRUE' + username: wso2carbon + password: wso2carbon + driverClassName: org.h2.Driver + maxPoolSize: 50 + idleTimeout: 60000 + connectionTestQuery: SELECT 1 + validationTimeout: 30000 + isAutoCommit: false + - name: Activity_Explorer_DB + description: "The datasource used for activity explorer to store span information." + jndiConfig: + name: jdbc/Activity_Explorer_DB + definition: + type: RDBMS + configuration: + jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/dashboard/database/ACTIVITY_EXPLORER_DB;AUTO_SERVER=TRUE' + username: wso2carbon + password: wso2carbon + driverClassName: org.h2.Driver + maxPoolSize: 50 + idleTimeout: 60000 + connectionTestQuery: SELECT 1 + validationTimeout: 30000 + isAutoCommit: false wso2.business.rules.manager: datasource: BUSINESS_RULES_DB @@ -328,6 +378,10 @@ wso2.business.rules.manager: - stock-exchange-input - stock-exchange-output - identifying-continuous-production-decrease + - popular-tweets-analysis + - http-analytics-processing + - activity-explorer-app-template + - activity-explorer-source-template # credentials for worker nodes username: admin password: admin diff --git a/docker-compose/editor-worker-dashboard/docker-compose.yml b/docker-compose/editor-worker-dashboard/docker-compose.yml index 3161b12..77eb945 100644 --- a/docker-compose/editor-worker-dashboard/docker-compose.yml +++ b/docker-compose/editor-worker-dashboard/docker-compose.yml @@ -15,17 +15,18 @@ services: timeout: 60s retries: 5 editor: - image: docker.wso2.com/wso2sp-editor:4.1.0 + image: docker.wso2.com/wso2sp-editor:4.2.0 container_name: wso2sp-editor ports: - "9743:9743" + - "9390:9390" healthcheck: test: ["CMD", "nc", "-z","localhost", "9743"] interval: 10s timeout: 120s retries: 5 worker: - image: docker.wso2.com/wso2sp-worker:4.1.0 + image: docker.wso2.com/wso2sp-worker:4.2.0 container_name: wso2sp-worker ports: - "9090:9090" @@ -35,14 +36,14 @@ services: timeout: 120s retries: 5 volumes: - - ./worker:/home/wso2carbon/volumes/conf/worker + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker depends_on: mysql: condition: service_healthy links: - mysql dashboard: - image: docker.wso2.com/wso2sp-dashboard:4.1.0 + image: docker.wso2.com/wso2sp-dashboard:4.2.0 container_name: wso2sp-dashboard ports: - "9643:9643" @@ -55,4 +56,4 @@ services: worker: condition: service_healthy volumes: - - ./dashboard:/home/wso2carbon/volumes/conf/dashboard + - ./dashboard:/home/wso2carbon/wso2-server-volume/conf/dashboard diff --git a/docker-compose/editor-worker-dashboard/worker/deployment.yaml b/docker-compose/editor-worker-dashboard/worker/deployment.yaml index e08e7ff..aa02c6b 100644 --- a/docker-compose/editor-worker-dashboard/worker/deployment.yaml +++ b/docker-compose/editor-worker-dashboard/worker/deployment.yaml @@ -347,6 +347,57 @@ wso2.datasources: validationTimeout: 30000 isAutoCommit: false + - name: HTTP_ANALYTICS_DB + description: The datasource used for HTTP Analytics dashboard + jndiConfig: + name: jdbc/HTTP_ANALYTICS_DB + useJndiReference: false + definition: + type: RDBMS + configuration: + jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/worker/database/HTTP_ANALYTICS_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;MVCC=TRUE;AUTO_SERVER=TRUE' + username: wso2carbon + password: wso2carbon + driverClassName: org.h2.Driver + maxPoolSize: 50 + idleTimeout: 60000 + connectionTestQuery: SELECT 1 + validationTimeout: 30000 + isAutoCommit: false + - name: Twitter_Analytics + description: The datasource used for Twitter Analytics dashboard + jndiConfig: + name: jdbc/Twitter_Analytics + useJndiReference: false + definition: + type: RDBMS + configuration: + jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/worker/database/Twitter_Analytics;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;MVCC=TRUE;AUTO_SERVER=TRUE' + username: wso2carbon + password: wso2carbon + driverClassName: org.h2.Driver + maxPoolSize: 50 + idleTimeout: 60000 + connectionTestQuery: SELECT 1 + validationTimeout: 30000 + isAutoCommit: false + + - name: Activity_Explorer_DB + description: "The datasource used for activity explorer to store span information." + jndiConfig: + name: jdbc/Activity_Explorer_DB + definition: + type: RDBMS + configuration: + jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/dashboard/database/ACTIVITY_EXPLORER_DB;AUTO_SERVER=TRUE' + username: wso2carbon + password: wso2carbon + driverClassName: org.h2.Driver + maxPoolSize: 50 + idleTimeout: 60000 + connectionTestQuery: SELECT 1 + validationTimeout: 30000 + isAutoCommit: false # Cluster Configuration cluster.config: diff --git a/docker-compose/sp-distributed/README.md b/docker-compose/sp-distributed/README.md index 5f8ccb0..ac05d75 100644 --- a/docker-compose/sp-distributed/README.md +++ b/docker-compose/sp-distributed/README.md @@ -6,11 +6,11 @@ * Install [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git), [Docker](https://www.docker.com/get-docker) and [Docker Compose](https://docs.docker.com/compose/install/#install-compose) in order to run the steps provided in following Quick start guide.

- * In order to run this Docker Compose setup, you will need an active [Free Trial Subscription](https://wso2.com/free-trial-subscription) + * In order to run this Docker Compose setup, you will need an active [Free Trial Subscription](https://wso2.com/free-trial-subscription) from WSO2 since the referring Docker images hosted at docker.wso2.com contains the latest updates and fixes for WSO2 Stream Processor. You can sign up for a Free Trial Subscription [here](https://wso2.com/free-trial-subscription).

- * If you wish to run the Docker Compose configuration using Docker images built locally, build the Stream Processor manager and worker - images using [SP Dockerfiles](../../dockerfiles/README.md) and remove the `docker.wso2.com/` prefix - from the `image` name In the `docker-compose.yml`. For example, change the line `image: docker.wso2.com/wso2sp-manager:4.1.0`
to `image: wso2sp-manager:4.1.0`.

+ * If you wish to run the Docker Compose configuration using Docker images built locally, build the Stream Processor manager and worker + images using [SP Dockerfiles](../../dockerfiles/README.md) and remove the `docker.wso2.com/` prefix + from the `image` name In the `docker-compose.yml`. For example, change the line `image: docker.wso2.com/wso2sp-manager:4.2.0`
to `image: wso2sp-manager:4.2.0`.

## How to deploy @@ -24,26 +24,24 @@ ``` cd [docker-sp]/docker-compose/sp-distributed ``` - > If you are to try out an already released zip of this repo, please ignore this 2nd step also. - Instead, extract the zip file and directly browse to `docker-sp-docker-compose/sp-distributed` folder. - - > If you want to try out an already released tag, after executing 2nd step, checkout the relevant tag, - i.e. for example: git checkout tags/v4.1.0.1 and continue below steps. + > If you are to try out an already released zip of this repo, please ignore this 2nd step also. + Instead, extract the zip file and directly browse to `docker-sp-docker-compose/sp-distributed` folder. + + > If you want to try out an already released tag, after executing 2nd step, checkout the relevant tag, + i.e. for example: git checkout tags/v4.2.0.1 and continue below steps. 3. Execute the following Docker Compose command to start the deployment. ``` docker-compose up ``` 4. Siddhi applications should be deployed to the manager cluster using following method. - - Sending a "POST" request to http://:/siddhi-apps, with the Siddhi App attached as a file in the request as shown in the example below. - Refer [Stream Processor REST API Guide](https://docs.wso2.com/display/SP410/Stream+Processor+REST+API+Guide) for more information on using WSO2 Strean Processor APIs. - + + Sending a "POST" request to http://:/siddhi-apps, with the Siddhi App attached as a file in the request as shown in the example below. + Refer [Stream Processor REST API Guide](https://docs.wso2.com/display/SP420/Stream+Processor+REST+API+Guide) for more information on using WSO2 Strean Processor APIs. + Manager nodes are deployed under, ``` - Manager 1 - https://localhost:9190/ - Manager 2 - https://localhost:9191/ + Manager 1 - https://localhost:9543/ + Manager 2 - https://localhost:9544/ ``` - > Refer [Stream Processor Fully Distributed Deployment](https://docs.wso2.com/display/SP410/Fully+Distributed+Deployment) - - + > Refer [Stream Processor Fully Distributed Deployment](https://docs.wso2.com/display/SP420/Fully+Distributed+Deployment) diff --git a/docker-compose/sp-distributed/docker-compose.yml b/docker-compose/sp-distributed/docker-compose.yml index 260466b..4092493 100644 --- a/docker-compose/sp-distributed/docker-compose.yml +++ b/docker-compose/sp-distributed/docker-compose.yml @@ -42,6 +42,7 @@ services: MYSQL_ROOT_PASSWORD: root volumes: - ./mysql/scripts:/docker-entrypoint-initdb.d + command: --max-connections=10000 healthcheck: test: ["CMD", "mysqladmin" ,"ping", "-uroot", "-proot"] interval: 30s @@ -51,17 +52,17 @@ services: kafka: condition: service_healthy manager1: - image: docker.wso2.com/wso2sp-manager:4.1.0 + image: docker.wso2.com/wso2sp-manager:4.2.0 container_name: wso2sp-manager-1 ports: - - "9190:9190" + - "9543:9543" healthcheck: - test: ["CMD", "nc", "-z","localhost", "9190"] + test: ["CMD", "nc", "-z","localhost", "9543"] interval: 10s timeout: 120s retries: 5 volumes: - - ./manager:/home/wso2carbon/volumes/conf/manager + - ./manager:/home/wso2carbon/wso2-server-volume/conf/manager depends_on: mysql: condition: service_healthy @@ -71,17 +72,17 @@ services: links: - mysql manager2: - image: docker.wso2.com/wso2sp-manager:4.1.0 + image: docker.wso2.com/wso2sp-manager:4.2.0 container_name: wso2sp-manager-2 ports: - - "9191:9190" + - "9544:9543" healthcheck: - test: ["CMD", "nc", "-z","localhost", "9191"] + test: ["CMD", "nc", "-z","localhost", "9543"] interval: 10s timeout: 120s retries: 5 volumes: - - ./manager:/home/wso2carbon/volumes/conf/manager + - ./manager:/home/wso2carbon/wso2-server-volume/conf/manager depends_on: manager1: condition: service_healthy @@ -91,17 +92,17 @@ services: links: - manager1 worker1: - image: docker.wso2.com/wso2sp-worker:4.1.0 + image: docker.wso2.com/wso2sp-worker:4.2.0 container_name: wso2sp-worker-1 ports: - - "9001:9090" + - "9001:9443" healthcheck: - test: ["CMD", "nc", "-z","localhost", "9090"] + test: ["CMD", "nc", "-z","localhost", "9001"] interval: 10s timeout: 120s retries: 5 volumes: - - ./worker:/home/wso2carbon/volumes/conf/worker + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker depends_on: manager1: condition: service_healthy @@ -112,17 +113,17 @@ services: links: - manager1 worker2: - image: docker.wso2.com/wso2sp-worker:4.1.0 + image: docker.wso2.com/wso2sp-worker:4.2.0 container_name: wso2sp-worker-2 ports: - - "9002:9090" + - "9002:9443" healthcheck: test: ["CMD", "nc", "-z","localhost", "9002"] interval: 10s timeout: 120s retries: 5 volumes: - - ./worker:/home/wso2carbon/volumes/conf/worker + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker depends_on: manager1: condition: service_healthy @@ -133,17 +134,17 @@ services: links: - manager1 worker3: - image: docker.wso2.com/wso2sp-worker:4.1.0 + image: docker.wso2.com/wso2sp-worker:4.2.0 container_name: wso2sp-worker-3 ports: - - "9003:9090" + - "9003:9443" healthcheck: test: ["CMD", "nc", "-z","localhost", "9003"] interval: 10s timeout: 120s retries: 5 volumes: - - ./worker:/home/wso2carbon/volumes/conf/worker + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker depends_on: manager1: condition: service_healthy @@ -154,17 +155,17 @@ services: links: - manager1 worker4: - image: docker.wso2.com/wso2sp-worker:4.1.0 + image: docker.wso2.com/wso2sp-worker:4.2.0 container_name: wso2sp-worker-4 ports: - - "9004:9090" + - "9004:9443" healthcheck: test: ["CMD", "nc", "-z","localhost", "9004"] interval: 10s timeout: 120s retries: 5 volumes: - - ./worker:/home/wso2carbon/volumes/conf/worker + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker depends_on: manager1: condition: service_healthy diff --git a/docker-compose/sp-distributed/manager/deployment.yaml b/docker-compose/sp-distributed/manager/deployment.yaml index 29eba51..4092493 100644 --- a/docker-compose/sp-distributed/manager/deployment.yaml +++ b/docker-compose/sp-distributed/manager/deployment.yaml @@ -1,311 +1,177 @@ -################################################################################ -# Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved -# -# Licensed under the Apache License, Version 2.0 (the \"License\"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an \"AS IS\" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -################################################################################ - - # Carbon Configuration Parameters -wso2.carbon: - # value to uniquely identify a server - id: ${NODE_ID} - # server name - name: WSO2 Stream Processor - # ports used by this server - ports: - # port offset - offset: 0 - -wso2.transport.http: - transportProperties: - - - name: "server.bootstrap.socket.timeout" - value: 60 - - - name: "client.bootstrap.socket.timeout" - value: 60 - - - name: "latency.metrics.enabled" - value: true - - listenerConfigurations: - - - id: "default" - host: "${NODE_IP}" - port: 9190 - - - id: "msf4j-https" - host: "${NODE_IP}" - port: 9543 - scheme: https - keyStoreFile: "${carbon.home}/resources/security/wso2carbon.jks" - keyStorePassword: wso2carbon - certPass: wso2carbon - - senderConfigurations: - - - id: "http-sender" - - # Configuration used for the databridge communication -databridge.config: - # No of worker threads to consume events - # THIS IS A MANDATORY FIELD - workerThreads: 10 - # Maximum amount of messages that can be queued internally in MB - # THIS IS A MANDATORY FIELD - maxEventBufferCapacity: 10000000 - # Queue size; the maximum number of events that can be stored in the queue - # THIS IS A MANDATORY FIELD - eventBufferSize: 2000 - # Keystore file path - # THIS IS A MANDATORY FIELD - keyStoreLocation : ${sys:carbon.home}/resources/security/wso2carbon.jks - # Keystore password - # THIS IS A MANDATORY FIELD - keyStorePassword : wso2carbon - # Session Timeout value in mins - # THIS IS A MANDATORY FIELD - clientTimeoutMin: 30 - # Data receiver configurations - # THIS IS A MANDATORY FIELD - dataReceivers: - - - # Data receiver configuration - dataReceiver: - # Data receiver type - # THIS IS A MANDATORY FIELD - type: Thrift - # Data receiver properties - properties: - tcpPort: '7611' - sslPort: '7711' - - - - # Data receiver configuration - dataReceiver: - # Data receiver type - # THIS IS A MANDATORY FIELD - type: Binary - # Data receiver properties - properties: - tcpPort: '9611' - sslPort: '9711' - tcpReceiverThreadPoolSize: '100' - sslReceiverThreadPoolSize: '100' - hostName: ${NODE_IP} - - # Configuration of the Data Agents - to publish events through databridge -data.agent.config: - # Data agent configurations - # THIS IS A MANDATORY FIELD - agents: - - - # Data agent configuration - agentConfiguration: - # Data agent name - # THIS IS A MANDATORY FIELD - name: Thrift - # Data endpoint class - # THIS IS A MANDATORY FIELD - dataEndpointClass: org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint - # Data publisher strategy - publishingStrategy: async - # Trust store path - trustStorePath: '${sys:carbon.home}/resources/security/client-truststore.jks' - # Trust store password - trustStorePassword: 'wso2carbon' - # Queue Size - queueSize: 32768 - # Batch Size - batchSize: 200 - # Core pool size - corePoolSize: 1 - # Socket timeout in milliseconds - socketTimeoutMS: 30000 - # Maximum pool size - maxPoolSize: 1 - # Keep alive time in pool - keepAliveTimeInPool: 20 - # Reconnection interval - reconnectionInterval: 30 - # Max transport pool size - maxTransportPoolSize: 250 - # Max idle connections - maxIdleConnections: 250 - # Eviction time interval - evictionTimePeriod: 5500 - # Min idle time in pool - minIdleTimeInPool: 5000 - # Secure max transport pool size - secureMaxTransportPoolSize: 250 - # Secure max idle connections - secureMaxIdleConnections: 250 - # secure eviction time period - secureEvictionTimePeriod: 5500 - # Secure min idle time in pool - secureMinIdleTimeInPool: 5000 - # SSL enabled protocols - sslEnabledProtocols: TLSv1.1,TLSv1.2 - # Ciphers - ciphers: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 - - - # Data agent configuration - agentConfiguration: - # Data agent name - # THIS IS A MANDATORY FIELD - name: Binary - # Data endpoint class - # THIS IS A MANDATORY FIELD - dataEndpointClass: org.wso2.carbon.databridge.agent.endpoint.binary.BinaryDataEndpoint - # Data publisher strategy - publishingStrategy: async - # Trust store path - trustStorePath: '${sys:carbon.home}/resources/security/client-truststore.jks' - # Trust store password - trustStorePassword: 'wso2carbon' - # Queue Size - queueSize: 32768 - # Batch Size - batchSize: 200 - # Core pool size - corePoolSize: 1 - # Socket timeout in milliseconds - socketTimeoutMS: 30000 - # Maximum pool size - maxPoolSize: 1 - # Keep alive time in pool - keepAliveTimeInPool: 20 - # Reconnection interval - reconnectionInterval: 30 - # Max transport pool size - maxTransportPoolSize: 250 - # Max idle connections - maxIdleConnections: 250 - # Eviction time interval - evictionTimePeriod: 5500 - # Min idle time in pool - minIdleTimeInPool: 5000 - # Secure max transport pool size - secureMaxTransportPoolSize: 250 - # Secure max idle connections - secureMaxIdleConnections: 250 - # secure eviction time period - secureEvictionTimePeriod: 5500 - # Secure min idle time in pool - secureMinIdleTimeInPool: 5000 - # SSL enabled protocols - sslEnabledProtocols: TLSv1.1,TLSv1.2 - # Ciphers - ciphers: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 - - # Deployment configuration parameters -wso2.artifact.deployment: - # Scheduler update interval - updateInterval: 5 - - # Periodic Persistence Configuration -state.persistence: - enabled: false - intervalInMin: 1 - revisionsToKeep: 2 - persistenceStore: org.wso2.carbon.stream.processor.core.persistence.FileSystemPersistenceStore - config: - location: siddhi-app-persistence - - # Secure Vault Configuration -wso2.securevault: - secretRepository: - type: org.wso2.carbon.secvault.repository.DefaultSecretRepository - parameters: - privateKeyAlias: wso2carbon - keystoreLocation: ${sys:carbon.home}/resources/security/securevault.jks - secretPropertiesFile: ${sys:carbon.home}/conf/${sys:wso2.runtime}/secrets.properties - masterKeyReader: - type: org.wso2.carbon.secvault.reader.DefaultMasterKeyReader - parameters: - masterKeyReaderFile: ${sys:carbon.home}/conf/${sys:wso2.runtime}/master-keys.yaml -wso2.datasources: - dataSources: - - name: SP_MGT_DB - description: The datasource used for registry and user manager - jndiConfig: - name: jdbc/WSO2ClusterDB - definition: - type: RDBMS - configuration: - jdbcUrl: 'jdbc:mysql://sp-rdbms:3306/SP_MGT_DB?useSSL=false' - username: root - password: root - driverClassName: com.mysql.jdbc.Driver - maxPoolSize: 50 - idleTimeout: 60000 - connectionTestQuery: SELECT 1 - validationTimeout: 30000 - isAutoCommit: false - - name: WSO2_PERMISSIONS_DB - description: The datasource used for permission feature - jndiConfig: - name: jdbc/PERMISSION_DB - useJndiReference: true - definition: - type: RDBMS - configuration: - jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/${sys:wso2.runtime}/database/PERMISSION_DB;IFEXISTS=TRUE;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;MVCC=TRUE' - username: wso2carbon - password: wso2carbon - driverClassName: org.h2.Driver - maxPoolSize: 50 - idleTimeout: 60000 - connectionTestQuery: SELECT 1 - validationTimeout: 30000 - isAutoCommit: false - - name: WSO2_STATUS_DASHBOARD_DISTRIBUTED_DB - description: The datasource used for distributed status dashboard feature - jndiConfig: - name: jdbc/WSO2_STATUS_DASHBOARD_DISTRIBUTED_DB - useJndiReference: true - definition: - type: RDBMS - configuration: - jdbcUrl: 'jdbc:h2:${sys:carbon.home}/wso2/${sys:wso2.runtime}/database/WSO2_STATUS_DASHBOARD_DISTRIBUTED_DB;DB_CLOSE_ON_EXIT=FALSE;LOCK_TIMEOUT=60000;MVCC=TRUE' - username: wso2carbon - password: wso2carbon - driverClassName: org.h2.Driver - maxPoolSize: 50 - idleTimeout: 60000 - connectionTestQuery: SELECT 1 - validationTimeout: 30000 - isAutoCommit: false - - # Cluster Configuration -cluster.config: - enabled: true - groupId: sp-mgt - coordinationStrategyClass: org.wso2.carbon.cluster.coordinator.rdbms.RDBMSCoordinationStrategy - strategyConfig: - datasource: SP_MGT_DB # define a mysql datasource configured to the shared database - heartbeatInterval: 1000 - heartbeatMaxRetry: 2 - eventPollingInterval: 1000 - - # Deployment Configuration for Distributed Deployment -deployment.config: - type: distributed - httpInterface: - host: ${NODE_ID} - port: 9190 - heartbeatInterval: 2000 - heartbeatMaxRetry: 2 - datasource: SP_MGT_DB # define a mysql datasource in datasources and refer it from here. - minResourceCount: 1 - bootstrapURLs: kafka:9092 # kafka urls - zooKeeperURLs: zookeeper:2181 # zookeeper urls +version: '2.3' +services: + zookeeper: + image: wurstmeister/zookeeper + container_name: zookeeper + ports: + - "2181:2181" + - "2888:2888" + - "3888:3888" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "2181"] + interval: 10s + timeout: 120s + retries: 5 + environment: + ZOO_PORT: 2181 + ZOOKEEPER_AUTOPURGE_SNAP_RETAIN_COUNT: 10 + ZOOKEEPER_AUTOPURGE_PURGE_INTERVAL: 2 + kafka: + image: wurstmeister/kafka + container_name: kafka + ports: + - "9092:9092" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "9092"] + interval: 10s + timeout: 120s + retries: 5 + depends_on: + zookeeper: + condition: service_healthy + environment: + KAFKA_ADVERTISED_PORT: 9092 + KAFKA_ADVERTISED_HOST_NAME: kafka + KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 + mysql: + image: mysql:5.7.19 + container_name: sp-rdbms + ports: + - 3306 + environment: + MYSQL_ROOT_PASSWORD: root + volumes: + - ./mysql/scripts:/docker-entrypoint-initdb.d + command: --max-connections=10000 + healthcheck: + test: ["CMD", "mysqladmin" ,"ping", "-uroot", "-proot"] + interval: 30s + timeout: 60s + retries: 5 + depends_on: + kafka: + condition: service_healthy + manager1: + image: docker.wso2.com/wso2sp-manager:4.2.0 + container_name: wso2sp-manager-1 + ports: + - "9543:9543" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "9543"] + interval: 10s + timeout: 120s + retries: 5 + volumes: + - ./manager:/home/wso2carbon/wso2-server-volume/conf/manager + depends_on: + mysql: + condition: service_healthy + environment: + NODE_ID: wso2sp-manager-1 + NODE_IP: 0.0.0.0 + links: + - mysql + manager2: + image: docker.wso2.com/wso2sp-manager:4.2.0 + container_name: wso2sp-manager-2 + ports: + - "9544:9543" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "9543"] + interval: 10s + timeout: 120s + retries: 5 + volumes: + - ./manager:/home/wso2carbon/wso2-server-volume/conf/manager + depends_on: + manager1: + condition: service_healthy + environment: + NODE_ID: wso2sp-manager-2 + NODE_IP: 0.0.0.0 + links: + - manager1 + worker1: + image: docker.wso2.com/wso2sp-worker:4.2.0 + container_name: wso2sp-worker-1 + ports: + - "9001:9443" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "9001"] + interval: 10s + timeout: 120s + retries: 5 + volumes: + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker + depends_on: + manager1: + condition: service_healthy + environment: + NODE_ID: wso2sp-worker-1 + NODE_IP: 0.0.0.0 + NODE_PORT: 9001 + links: + - manager1 + worker2: + image: docker.wso2.com/wso2sp-worker:4.2.0 + container_name: wso2sp-worker-2 + ports: + - "9002:9443" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "9002"] + interval: 10s + timeout: 120s + retries: 5 + volumes: + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker + depends_on: + manager1: + condition: service_healthy + environment: + NODE_ID: wso2sp-worker-2 + NODE_IP: 0.0.0.0 + NODE_PORT: 9002 + links: + - manager1 + worker3: + image: docker.wso2.com/wso2sp-worker:4.2.0 + container_name: wso2sp-worker-3 + ports: + - "9003:9443" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "9003"] + interval: 10s + timeout: 120s + retries: 5 + volumes: + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker + depends_on: + manager1: + condition: service_healthy + environment: + NODE_ID: wso2sp-worker-3 + NODE_IP: 0.0.0.0 + NODE_PORT: 9003 + links: + - manager1 + worker4: + image: docker.wso2.com/wso2sp-worker:4.2.0 + container_name: wso2sp-worker-4 + ports: + - "9004:9443" + healthcheck: + test: ["CMD", "nc", "-z","localhost", "9004"] + interval: 10s + timeout: 120s + retries: 5 + volumes: + - ./worker:/home/wso2carbon/wso2-server-volume/conf/worker + depends_on: + manager1: + condition: service_healthy + environment: + NODE_ID: wso2sp-worker-4 + NODE_IP: 0.0.0.0 + NODE_PORT: 9004 + links: + - manager1 diff --git a/docker-compose/sp-distributed/worker/deployment.yaml b/docker-compose/sp-distributed/worker/deployment.yaml index 92ae26d..9ab5bb2 100644 --- a/docker-compose/sp-distributed/worker/deployment.yaml +++ b/docker-compose/sp-distributed/worker/deployment.yaml @@ -1,5 +1,5 @@ ################################################################################ -# Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved +# Copyright (c) 2018, WSO2 Inc. (http://www.wso2.org) All Rights Reserved # # Licensed under the Apache License, Version 2.0 (the \"License\"); # you may not use this file except in compliance with the License. @@ -390,18 +390,18 @@ cluster.config: # Sample of deployment.config for Distributed deployment deployment.config: type: distributed - httpInterface: + httpsInterface: host: ${NODE_ID} - port: 9090 + port: 9443 username: admin password: admin leaderRetryInterval: 10000 resourceManagers: - host: wso2sp-manager-1 - port: 9190 + port: 9543 username: admin password: admin - host: wso2sp-manager-2 - port: 9191 + port: 9544 username: admin password: admin diff --git a/dockerfiles/README.md b/dockerfiles/README.md index 2c39bc3..f63a5b1 100644 --- a/dockerfiles/README.md +++ b/dockerfiles/README.md @@ -1,7 +1,7 @@ # Dockerfiles for WSO2 Stream Processor # This section defines Dockerfiles and step-by-step instructions to build Docker images for product profiles provided by -WSO2 Stream Processor 4.1.0, namely :
+WSO2 Stream Processor 4.2.0, namely :
1. Dashboard 2. Editor 3. Manager @@ -20,7 +20,7 @@ git clone https://github.com/wso2/docker-sp.git ##### 2. Copy the extract JDK and WSO2 Stream Processor distributions to `/base/files` - Download [JDK 1.8](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) and extract it to `/base/files`. -- Download [WSO2 Stream Processor 4.1.0 distribution](https://github.com/wso2/product-sp/releases) +- Download [WSO2 Stream Processor 4.2.0 distribution](https://github.com/wso2/product-sp/releases) and extract it to `/base/files`.
##### 3. Download [MySQL Connector/J](https://dev.mysql.com/downloads/connector/j/) v5.1.45 and copy the jar to `/base/files` @@ -40,41 +40,41 @@ The list of required client jars are; - zkclient-0.10.jar - zookeeper-3.4.9.jar -> Use the `jartobundle.sh` script found it `wso2sp-4.1.0/bin` as shown below; note that you will have to run this command for each jar mentioned above +> Use the `jartobundle.sh` script found it `wso2sp-4.2.0/bin` as shown below; note that you will have to run this command for each jar mentioned above ``` - ./wso2sp-4.1.0/bin/jartobundle.sh path/to/kafka/client/jar /base/files + ./wso2sp-4.2.0/bin/jartobundle.sh path/to/kafka/client/jar /base/files ``` ##### 4. Build the base Docker image. - For base, navigate to `/base` directory.
Execute `docker build` command as shown below. - + `docker build -t wso2sp-base:4.1.0 .` + + `docker build -t wso2sp-base:4.2.0 .` ##### 5. Build Docker images specific to each profile. - For Dashboard, navigate to `/dashboard` directory.
Execute `docker build` command as shown below. - + `docker build -t wso2sp-dashboard:4.1.0 .` + + `docker build -t wso2sp-dashboard:4.2.0 .` - For Editor, navigate to `/editor` directory.
Execute `docker build` command as shown below. - + `docker build -t wso2sp-editor:4.1.0 .` + + `docker build -t wso2sp-editor:4.2.0 .` - For Manager, navigate to `/manager` directory.
Execute `docker build` command as shown below. - + `docker build -t wso2sp-manager:4.1.0 .` + + `docker build -t wso2sp-manager:4.2.0 .` - For Worker, navigate to `/worker` directory.
Execute `docker build` command as shown below. - + `docker build -t wso2sp-worker:4.1.0 .` + + `docker build -t wso2sp-worker:4.2.0 .` ##### 6. Running Docker images specific to each profile. - For Dashboard, - + `docker run -it -p 9643:9643 wso2sp-dashboard:4.1.0` + + `docker run -it -p 9643:9643 wso2sp-dashboard:4.2.0` - For Editor, - + `docker run -it -p 9390:9390 -p 9743:9743 wso2sp-editor:4.1.0` + + `docker run -it -p 9390:9390 -p 9743:9743 wso2sp-editor:4.2.0` - For Manager, - + `docker run -it wso2sp-manager:4.1.0` + + `docker run -it wso2sp-manager:4.2.0` - For Worker, - + `docker run -it wso2sp-worker:4.1.0` + + `docker run -it wso2sp-worker:4.2.0` ##### 7. Accessing management console per each profile. - For Dashboard, diff --git a/dockerfiles/base/Dockerfile b/dockerfiles/base/Dockerfile index 8220366..05b474e 100644 --- a/dockerfiles/base/Dockerfile +++ b/dockerfiles/base/Dockerfile @@ -33,7 +33,7 @@ ARG JDK=jdk1.8.0* ARG JAVA_HOME=${USER_HOME}/java # set wso2 product configurations ARG WSO2_SERVER=wso2sp -ARG WSO2_SERVER_VERSION=4.1.0 +ARG WSO2_SERVER_VERSION=4.2.0 ARG WSO2_SERVER_PACK=${WSO2_SERVER}-${WSO2_SERVER_VERSION} ARG WSO2_SERVER_HOME=${USER_HOME}/${WSO2_SERVER}-${WSO2_SERVER_VERSION} diff --git a/dockerfiles/dashboard/Dockerfile b/dockerfiles/dashboard/Dockerfile index 99e62cc..6a96012 100644 --- a/dockerfiles/dashboard/Dockerfile +++ b/dockerfiles/dashboard/Dockerfile @@ -17,7 +17,7 @@ # ------------------------------------------------------------------------ # set to latest Ubuntu LTS -FROM wso2sp-base:4.1.0 +FROM wso2sp-base:4.2.0 MAINTAINER WSO2 Docker Maintainers "dev@wso2.org" # copy entrypoint bash script to user home diff --git a/dockerfiles/dashboard/init.sh b/dockerfiles/dashboard/init.sh index c9b2456..8140a9e 100755 --- a/dockerfiles/dashboard/init.sh +++ b/dockerfiles/dashboard/init.sh @@ -21,7 +21,7 @@ user=wso2carbon group=wso2 # file path variables -volumes=${WORKING_DIRECTORY}/volumes +volumes=${WORKING_DIRECTORY}/wso2-server-volume # check if the WSO2 non-root user home exists test ! -d ${WORKING_DIRECTORY} && echo "WSO2 Docker non-root user home does not exist" && exit 1 diff --git a/dockerfiles/editor/Dockerfile b/dockerfiles/editor/Dockerfile index 5a4148a..2199595 100644 --- a/dockerfiles/editor/Dockerfile +++ b/dockerfiles/editor/Dockerfile @@ -17,7 +17,7 @@ # ------------------------------------------------------------------------ # set to latest Ubuntu LTS -FROM wso2sp-base:4.1.0 +FROM wso2sp-base:4.2.0 MAINTAINER WSO2 Docker Maintainers "dev@wso2.org" # copy entrypoint bash script to user home diff --git a/dockerfiles/editor/init.sh b/dockerfiles/editor/init.sh index 2f39d92..d88bb1e 100755 --- a/dockerfiles/editor/init.sh +++ b/dockerfiles/editor/init.sh @@ -21,7 +21,7 @@ user=wso2carbon group=wso2 # file path variables -volumes=${WORKING_DIRECTORY}/volumes +volumes=${WORKING_DIRECTORY}/wso2-server-volume # check if the WSO2 non-root user home exists test ! -d ${WORKING_DIRECTORY} && echo "WSO2 Docker non-root user home does not exist" && exit 1 diff --git a/dockerfiles/manager/Dockerfile b/dockerfiles/manager/Dockerfile index 61c3956..71cd993 100644 --- a/dockerfiles/manager/Dockerfile +++ b/dockerfiles/manager/Dockerfile @@ -17,7 +17,7 @@ # ------------------------------------------------------------------------ # set to latest Ubuntu LTS -FROM wso2sp-base:4.1.0 +FROM wso2sp-base:4.2.0 MAINTAINER WSO2 Docker Maintainers "dev@wso2.org" # copy entrypoint bash script to user home diff --git a/dockerfiles/manager/init.sh b/dockerfiles/manager/init.sh index b8df32f..d4c4cab 100755 --- a/dockerfiles/manager/init.sh +++ b/dockerfiles/manager/init.sh @@ -24,7 +24,7 @@ user=wso2carbon group=wso2 # file path variables -volumes=${WORKING_DIRECTORY}/volumes +volumes=${WORKING_DIRECTORY}/wso2-server-volume k8s_volumes=${WORKING_DIRECTORY}/kubernetes-volumes # check if the WSO2 non-root user home exists diff --git a/dockerfiles/worker/Dockerfile b/dockerfiles/worker/Dockerfile index 8e9b279..1090035 100644 --- a/dockerfiles/worker/Dockerfile +++ b/dockerfiles/worker/Dockerfile @@ -17,7 +17,7 @@ # ------------------------------------------------------------------------ # set to latest Ubuntu LTS -FROM wso2sp-base:4.1.0 +FROM wso2sp-base:4.2.0 MAINTAINER WSO2 Docker Maintainers "dev@wso2.org" # copy entrypoint bash script to user home diff --git a/dockerfiles/worker/init.sh b/dockerfiles/worker/init.sh index 5e5de67..b20b426 100755 --- a/dockerfiles/worker/init.sh +++ b/dockerfiles/worker/init.sh @@ -24,7 +24,7 @@ user=wso2carbon group=wso2 # file path variables -volumes=${WORKING_DIRECTORY}/volumes +volumes=${WORKING_DIRECTORY}/wso2-server-volume k8s_volumes=${WORKING_DIRECTORY}/kubernetes-volumes # check if the WSO2 non-root user home exists