Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Follow the instructions below to install DAS on Windows.

Note

Before you begin:

  • See the known incompatibilities section to find out if this version of the product has issues running on your OS due to the JDK version.
  • See the compatibility matrix to find out if this version of the product is fully tested on your operating system.

Installing the required applications

...

Make sure your system meets the Installation Prerequisites

Info

Java Development Kit (JDK) is essential to run the product.

Installing the DAS

  1. Download the latest version of the DAS as described in Downloading the Product .
  2. Extract the archive file to a dedicated directory for the DAS, which will hereafter be referred to as <DAS_HOME>.

...

  1. Download the snappy-java_1.1.1.7.jar from here.
  2. Copy the jar to <DAS_HOME>\repository\components\lib.
  3. If the DAS server is currently running, restart it to apply the changes.

...

  • Set the properties from a script: Setting your system properties in the startup script is ideal, because it ensures that you set the properties every time you start the server. To avoid having to modify the script each time you upgrade, the best approach is to create your own startup script that wraps the WSO2 startup script and adds the properties you want to set, rather than editing the WSO2 startup script directly.
  • Set the properties from an external registry: If you want to access properties from an external registry, you could create Java code that reads the properties at runtime from that registry. Be sure to store sensitive data such as username and password to connect to the registry in a properties file instead of in the Java code and secure the properties file with the secure vault.
Info

Once all the instructions given above are completed, you may see the following error in the start up logs when you run the DAS server.

Expand
titleClick here to view the complete error.
TID: [-1234] [] [2016-07-25 11:33:53,000]  WARN {org.apache.hadoop.util.NativeCodeLoader} -  Unable to load native-hadoop library for your platform... using builtin-java classes where applicable {org.apache.hadoop.util.NativeCodeLoader}
TID: [-1234] [] [2016-07-25 11:33:53,037] ERROR {org.apache.hadoop.util.Shell} -  Failed to locate the winutils binary in the hadoop binary path {org.apache.hadoop.util.Shell}
java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.
                at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:355)
                at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:370)
                at org.apache.hadoop.util.Shell.<clinit>(Shell.java:363)
                at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:79)
                at org.apache.hadoop.security.Groups.parseStaticMapping(Groups.java:104)
                at org.apache.hadoop.security.Groups.<init>(Groups.java:86)
                at org.apache.hadoop.security.Groups.<init>(Groups.java:66)
                at org.apache.hadoop.security.Groups.getUserToGroupsMappingService(Groups.java:280)
                at org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:271)
                at org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:248)
                at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:763)
                at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:748)
                at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:621)
                at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2042)
                at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2042)
                at scala.Option.getOrElse(Option.scala:120)
                at org.apache.spark.util.Utils$.getCurrentUserName(Utils.scala:2042)
                at org.apache.spark.SecurityManager.<init>(SecurityManager.scala:212)
                at org.apache.spark.deploy.master.Master$.startSystemAndActor(Master.scala:914)
                at org.apache.spark.deploy.master.Master.startSystemAndActor(Master.scala)
                at org.wso2.carbon.analytics.spark.core.internal.SparkAnalyticsExecutor.startMaster(SparkAnalyticsExecutor.java:419)
                at org.wso2.carbon.analytics.spark.core.internal.SparkAnalyticsExecutor.runClusteredSetupLogic(SparkAnalyticsExecutor.java:248)
                at org.wso2.carbon.analytics.spark.core.internal.SparkAnalyticsExecutor.initializeSparkServer(SparkAnalyticsExecutor.java:174)
                at org.wso2.carbon.analytics.spark.core.internal.AnalyticsComponent.activate(AnalyticsComponent.java:71)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
                at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
                at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
                at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
                at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
                at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:950)
                at org.wso2.carbon.analytics.dataservice.core.AnalyticsDataServiceComponent.activate(AnalyticsDataServiceComponent.java:66)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
                at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
                at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
                at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
                at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
                at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
                at org.wso2.carbon.ntask.core.internal.TasksDSComponent.activate(TasksDSComponent.java:106)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
                at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
                at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
                at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
                at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
                at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
                at org.wso2.carbon.core.internal.StartupFinalizerServiceComponent.completeInitialization(StartupFinalizerServiceComponent.java:199)
                at org.wso2.carbon.core.internal.StartupFinalizerServiceComponent.serviceChanged(StartupFinalizerServiceComponent.java:288)
                at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
                at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
                at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
                at org.wso2.carbon.server.admin.internal.ServerAdminServiceComponent.activate(ServerAdminServiceComponent.java:106)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
                at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
                at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
                at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
                at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
                at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
                at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
                at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
                at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
                at org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:514)
                at org.wso2.carbon.core.init.CarbonServerManager.removePendingItem(CarbonServerManager.java:290)
                at org.wso2.carbon.core.init.PreAxis2ConfigItemListener.bundleChanged(PreAxis2ConfigItemListener.java:118)
                at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:847)
                at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
                at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)

This error does not affect the functionality of WSO2 DAS. However, you can prevent it from appearing in the logs by following the steps below.

  1. Create a directory in a preferred location in your machine and name it as preferred. In this example, it is named DAS.
  2. Create another directory named bin inside the directory you created.
  3. Download the winutils.exe from here and place it in the DAS/bin directory you created in the previous step.
  4. Specify a new Environment variable named HADOOP_HOME and set the same directory as the value (i.e. C:\DAS).

You are now ready to run the product.