You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by dm...@apache.org on 2018/08/22 01:51:39 UTC
[1/2] ignite git commit: Kubernetes Azure configuration
Repository: ignite
Updated Branches:
refs/heads/master 11433f4a4 -> 9e5000539
Kubernetes Azure configuration
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/c721bc6e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/c721bc6e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/c721bc6e
Branch: refs/heads/master
Commit: c721bc6e4a25c32a29c135bbdd3d435757a4c18d
Parents: 0e17631
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Aug 21 21:50:36 2018 -0400
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Aug 21 21:50:36 2018 -0400
----------------------------------------------------------------------
.../config/az/ignite-account-role.yaml | 30 ++++++++
.../kubernetes/config/az/ignite-deployment.yaml | 47 +++++++++++++
.../kubernetes/config/az/ignite-namespace.yaml | 19 +++++
.../az/ignite-persistence-storage-class.yaml | 25 +++++++
.../config/az/ignite-role-binding.yaml | 27 +++++++
.../config/az/ignite-service-account.yaml | 20 ++++++
.../kubernetes/config/az/ignite-service.yaml | 38 ++++++++++
.../config/az/ignite-stateful-set.yaml | 74 ++++++++++++++++++++
.../config/az/ignite-wal-storage-class.yaml | 25 +++++++
9 files changed, 305 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-account-role.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-account-role.yaml b/modules/kubernetes/config/az/ignite-account-role.yaml
new file mode 100644
index 0000000..0071e43
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-account-role.yaml
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+apiVersion: rbac.authorization.k8s.io/v1beta1
+kind: ClusterRole
+metadata:
+ name: ignite
+ namespace: ignite
+rules:
+- apiGroups:
+ - ""
+ resources: # Here are resources you can access
+ - pods
+ - endpoints
+ verbs: # That is what you can do with them
+ - get
+ - list
+ - watch
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-deployment.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-deployment.yaml b/modules/kubernetes/config/az/ignite-deployment.yaml
new file mode 100644
index 0000000..e1f6c22
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-deployment.yaml
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+# An example of a Kubernetes configuration for Ignite pods deployment.
+apiVersion: extensions/v1beta1
+kind: Deployment
+metadata:
+ # Custom Ignite cluster's name.
+ name: ignite-cluster
+spec:
+ # A number of Ignite pods to be started by Kubernetes initially.
+ replicas: 2
+ template:
+ metadata:
+ labels:
+ app: ignite
+ spec:
+ containers:
+ # Custom Ignite pod name.
+ - name: ignite-node
+ image: apacheignite/ignite:2.5.0
+ env:
+ - name: OPTION_LIBS
+ value: ignite-kubernetes
+ - name: CONFIG_URI
+ value: https://raw.githubusercontent.com/apache/ignite/master/modules/kubernetes/config/example-kube-persistence.xml
+ ports:
+ # Ports to open.
+ # Might be optional depending on your Kubernetes environment.
+ - containerPort: 11211 # REST port number.
+ - containerPort: 47100 # communication SPI port number.
+ - containerPort: 47500 # discovery SPI port number.
+ - containerPort: 49112 # JMX port number.
+ - containerPort: 10800 # SQL port number.
+ - containerPort: 10900 # Thin clients port number.
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-namespace.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-namespace.yaml b/modules/kubernetes/config/az/ignite-namespace.yaml
new file mode 100644
index 0000000..e0154d4
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-namespace.yaml
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: ignite
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-persistence-storage-class.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-persistence-storage-class.yaml b/modules/kubernetes/config/az/ignite-persistence-storage-class.yaml
new file mode 100644
index 0000000..da1a442
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-persistence-storage-class.yaml
@@ -0,0 +1,25 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+#Microsoft Azure Configuration
+kind: StorageClass
+apiVersion: storage.k8s.io/v1
+metadata:
+ name: ignite-persistence-storage-class #StorageClass name
+ namespace: ignite #Ignite namespace
+provisioner: kubernetes.io/azure-disk
+parameters:
+ storageaccounttype: Standard_LRS
+ kind: dedicated
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-role-binding.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-role-binding.yaml b/modules/kubernetes/config/az/ignite-role-binding.yaml
new file mode 100644
index 0000000..fdef0f0
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-role-binding.yaml
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+kind: ClusterRoleBinding
+apiVersion: rbac.authorization.k8s.io/v1beta1
+metadata:
+ name: ignite
+roleRef:
+ kind: ClusterRole
+ name: ignite
+ apiGroup: rbac.authorization.k8s.io
+subjects:
+- kind: ServiceAccount
+ name: ignite
+ namespace: ignite
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-service-account.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-service-account.yaml b/modules/kubernetes/config/az/ignite-service-account.yaml
new file mode 100644
index 0000000..ef207af
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-service-account.yaml
@@ -0,0 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ name: ignite
+ namespace: ignite
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-service.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-service.yaml b/modules/kubernetes/config/az/ignite-service.yaml
new file mode 100644
index 0000000..7cedccc
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-service.yaml
@@ -0,0 +1,38 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+apiVersion: v1
+kind: Service
+metadata:
+ # The name must be equal to TcpDiscoveryKubernetesIpFinder.serviceName
+ name: ignite
+ # The name must be equal to TcpDiscoveryKubernetesIpFinder.namespaceName
+ namespace: ignite
+spec:
+ type: LoadBalancer
+ ports:
+ - name: rest
+ port: 8080
+ targetPort: 8080
+ - name: sql
+ port: 10800
+ targetPort: 10800
+ - name: thinclients
+ port: 10900
+ targetPort: 10900
+ sessionAffinity: ClientIP
+ selector:
+ # Must be equal to the label set for Ignite pods.
+ app: ignite
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-stateful-set.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-stateful-set.yaml b/modules/kubernetes/config/az/ignite-stateful-set.yaml
new file mode 100644
index 0000000..3ab039c
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-stateful-set.yaml
@@ -0,0 +1,74 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+apiVersion: apps/v1beta2
+kind: StatefulSet
+metadata:
+ name: ignite
+ namespace: ignite
+spec:
+ selector:
+ matchLabels:
+ app: ignite
+ serviceName: ignite
+ replicas: 2
+ template:
+ metadata:
+ labels:
+ app: ignite
+ spec:
+ serviceAccountName: ignite
+ containers:
+ - name: ignite
+ image: apacheignite/ignite:2.6.0
+ env:
+ - name: OPTION_LIBS
+ value: ignite-kubernetes,ignite-rest-http
+ - name: CONFIG_URI
+ value: https://raw.githubusercontent.com/apache/ignite/master/modules/kubernetes/config/example-kube-persistence-and-wal.xml
+ - name: IGNITE_QUIET
+ value: "false"
+ - name: JVM_OPTS
+ value: "-Djava.net.preferIPv4Stack=true"
+ ports:
+ - containerPort: 11211 # JDBC port number.
+ - containerPort: 47100 # communication SPI port number.
+ - containerPort: 47500 # discovery SPI port number.
+ - containerPort: 49112 # JMX port number.
+ - containerPort: 10800 # SQL port number.
+ - containerPort: 8080 # REST port number.
+ - containerPort: 10900 #Thin clients port number.
+ volumeMounts:
+ - mountPath: "/wal"
+ name: ignite-wal
+ - mountPath: "/persistence"
+ name: ignite-persistence
+ volumeClaimTemplates:
+ - metadata:
+ name: ignite-persistence
+ spec:
+ accessModes: [ "ReadWriteOnce" ]
+ storageClassName: "ignite-persistence-storage-class"
+ resources:
+ requests:
+ storage: "1Gi"
+ - metadata:
+ name: ignite-wal
+ spec:
+ accessModes: [ "ReadWriteOnce" ]
+ storageClassName: "ignite-wal-storage-class"
+ resources:
+ requests:
+ storage: "1Gi"
http://git-wip-us.apache.org/repos/asf/ignite/blob/c721bc6e/modules/kubernetes/config/az/ignite-wal-storage-class.yaml
----------------------------------------------------------------------
diff --git a/modules/kubernetes/config/az/ignite-wal-storage-class.yaml b/modules/kubernetes/config/az/ignite-wal-storage-class.yaml
new file mode 100644
index 0000000..0e4874e
--- /dev/null
+++ b/modules/kubernetes/config/az/ignite-wal-storage-class.yaml
@@ -0,0 +1,25 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+#Microsoft Azure Configuration
+kind: StorageClass
+apiVersion: storage.k8s.io/v1
+metadata:
+ name: ignite-wal-storage-class #StorageClass name
+ namespace: ignite #Ignite namespace
+provisioner: kubernetes.io/azure-disk
+parameters:
+ storageaccounttype: Standard_LRS
+ kind: managed
[2/2] ignite git commit: Merge remote-tracking branch 'origin/master'
Posted by dm...@apache.org.
Merge remote-tracking branch 'origin/master'
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9e500053
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9e500053
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9e500053
Branch: refs/heads/master
Commit: 9e5000539684151754fea099dbdf9307a9daad5b
Parents: c721bc6 11433f4
Author: Denis Magda <dm...@gridgain.com>
Authored: Tue Aug 21 21:51:33 2018 -0400
Committer: Denis Magda <dm...@gridgain.com>
Committed: Tue Aug 21 21:51:33 2018 -0400
----------------------------------------------------------------------
.../clustering/KMeansClusterizationExample.java | 2 +-
.../ml/knn/KNNClassificationExample.java | 2 +-
.../examples/ml/knn/KNNRegressionExample.java | 2 +-
.../LinearRegressionLSQRTrainerExample.java | 2 +-
.../LinearRegressionSGDTrainerExample.java | 2 +-
.../LogisticRegressionSGDTrainerExample.java | 2 +-
.../split/TrainTestDatasetSplitterExample.java | 2 +-
.../binary/SVMBinaryClassificationExample.java | 2 +-
.../RandomForestClassificationExample.java | 2 +-
.../RandomForestRegressionExample.java | 2 +-
.../ignite/examples/ml/util/TestCache.java | 2 +-
.../distributed/dht/GridDhtLocalPartition.java | 35 +-
.../dht/GridDhtPartitionTopologyImpl.java | 32 +-
.../VisorCacheConfigurationCollectorTask.java | 1 -
.../cache/VisorCacheLostPartitionsTask.java | 5 +-
.../visor/cache/VisorCacheModifyTask.java | 14 +-
.../visor/cache/VisorCacheModifyTaskArg.java | 14 +-
.../visor/cache/VisorCacheModifyTaskResult.java | 28 +-
.../cache/VisorCacheNamesCollectorTask.java | 90 ++
.../VisorCacheNamesCollectorTaskResult.java | 88 ++
.../visor/cache/VisorCachePartitionsTask.java | 2 +-
.../VisorCacheResetLostPartitionsTask.java | 2 +-
.../internal/visor/file/VisorFileBlock.java | 2 +-
.../visor/node/VisorNodeDataCollectorJob.java | 19 +-
.../visor/node/VisorNodeDataCollectorTask.java | 2 +-
.../node/VisorNodeDataCollectorTaskArg.java | 47 +-
.../visor/service/VisorServiceTask.java | 2 +-
.../ignite/ssl/DelegatingSSLContextSpi.java | 103 ++
.../apache/ignite/ssl/SSLContextWrapper.java | 31 +
.../ssl/SSLServerSocketFactoryWrapper.java | 80 ++
.../ignite/ssl/SSLSocketFactoryWrapper.java | 113 ++
.../apache/ignite/ssl/SslContextFactory.java | 51 +
.../resources/META-INF/classnames.properties | 104 +-
.../apache/ignite/client/SslParametersTest.java | 329 +++++
.../CacheRentingStateRepairTest.java | 194 +++
.../IgniteOffheapReadWriteLockSelfTest.java | 25 +-
.../tcp/TcpDiscoverySslParametersTest.java | 274 +++++
.../ignite/testframework/GridTestUtils.java | 25 +-
.../junits/common/GridCommonAbstractTest.java | 113 +-
.../testsuites/IgniteCacheTestSuite7.java | 3 +
.../IgniteSpiDiscoverySelfTestSuite.java | 6 +-
.../apache/ignite/client/ClientTestSuite.java | 3 +-
.../ignite/ml/clustering/KMeansTrainerTest.java | 28 +-
.../apache/ignite/ml/common/TrainerTest.java | 1161 ++++++++++++++++++
.../ignite/ml/knn/ANNClassificationTest.java | 70 +-
.../linear/LinearRegressionLSQRTrainerTest.java | 46 +-
.../linear/LinearRegressionSGDTrainerTest.java | 47 +-
.../logistic/LogRegMultiClassTrainerTest.java | 45 +-
.../LogisticRegressionSGDTrainerTest.java | 60 +-
.../ignite/ml/svm/SVMBinaryTrainerTest.java | 38 +-
.../ignite/ml/svm/SVMMultiClassTrainerTest.java | 43 +-
.../cluster/TensorFlowClusterMaintainer.java | 142 ++-
.../cluster/TensorFlowClusterManager.java | 36 +
.../core/util/AsyncNativeProcessRunner.java | 50 +-
54 files changed, 3139 insertions(+), 486 deletions(-)
----------------------------------------------------------------------