Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
63c512cf
Commit
63c512cf
authored
Oct 29, 2015
by
k8s-merge-robot
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #16320 from zmerlynn/spark-rcs
Auto commit by PR queue bot
parents
139e158f
777d3a6e
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
226 additions
and
148 deletions
+226
-148
examples_test.go
examples/examples_test.go
+3
-2
README.md
examples/spark/README.md
+0
-0
Makefile
examples/spark/images/Makefile
+29
-0
Dockerfile
examples/spark/images/base/Dockerfile
+26
-6
core-site.xml
examples/spark/images/base/core-site.xml
+19
-0
spark-defaults.conf
examples/spark/images/base/spark-defaults.conf
+5
-0
start-common.sh
examples/spark/images/base/start-common.sh
+30
-0
Dockerfile
examples/spark/images/driver/Dockerfile
+1
-1
start.sh
examples/spark/images/driver/start.sh
+2
-3
Dockerfile
examples/spark/images/master/Dockerfile
+2
-2
start.sh
examples/spark/images/master/start.sh
+6
-1
Dockerfile
examples/spark/images/worker/Dockerfile
+2
-2
start.sh
examples/spark/images/worker/start.sh
+2
-9
spark-driver-controller.yaml
examples/spark/spark-driver-controller.yaml
+21
-0
spark-driver.json
examples/spark/spark-driver.json
+0
-23
spark-master-controller.yaml
examples/spark/spark-gluster/spark-master-controller.yaml
+3
-3
spark-master-service.yaml
examples/spark/spark-gluster/spark-master-service.yaml
+1
-1
spark-worker-controller.yaml
examples/spark/spark-gluster/spark-worker-controller.yaml
+3
-3
spark-master-controller.yaml
examples/spark/spark-master-controller.yaml
+24
-0
spark-master-service.json
examples/spark/spark-master-service.json
+0
-21
spark-master-service.yaml
examples/spark/spark-master-service.yaml
+12
-0
spark-master.json
examples/spark/spark-master.json
+0
-28
spark-webui.yaml
examples/spark/spark-webui.yaml
+11
-0
spark-worker-controller.json
examples/spark/spark-worker-controller.json
+0
-43
spark-worker-controller.yaml
examples/spark/spark-worker-controller.yaml
+24
-0
No files found.
examples/examples_test.go
View file @
63c512cf
...
...
@@ -356,10 +356,11 @@ func TestExampleObjectSchemas(t *testing.T) {
"secret"
:
&
api
.
Secret
{},
},
"../examples/spark"
:
{
"spark-driver-controller"
:
&
api
.
ReplicationController
{},
"spark-master-controller"
:
&
api
.
ReplicationController
{},
"spark-master-service"
:
&
api
.
Service
{},
"spark-
master"
:
&
api
.
Pod
{},
"spark-
webui"
:
&
api
.
Service
{},
"spark-worker-controller"
:
&
api
.
ReplicationController
{},
"spark-driver"
:
&
api
.
Pod
{},
},
"../examples/spark/spark-gluster"
:
{
"spark-master-service"
:
&
api
.
Service
{},
...
...
examples/spark/README.md
View file @
63c512cf
This diff is collapsed.
Click to expand it.
examples/spark/images/Makefile
0 → 100644
View file @
63c512cf
all
:
push
# To bump the Spark version, bump the version in base/Dockerfile, bump
# this tag and reset to v1. You should also double check the native
# Hadoop libs at that point (we grab the 2.6.1 libs, which are
# appropriate for 1.5.1-with-2.6).
TAG
=
1.5.1_v1
containers
:
docker build
-t
gcr.io/google_containers/spark-base base
docker tag gcr.io/google_containers/spark-base gcr.io/google_containers/spark-base:
$(TAG)
docker build
-t
gcr.io/google_containers/spark-worker worker
docker tag gcr.io/google_containers/spark-worker gcr.io/google_containers/spark-worker:
$(TAG)
docker build
-t
gcr.io/google_containers/spark-master master
docker tag gcr.io/google_containers/spark-master gcr.io/google_containers/spark-master:
$(TAG)
docker build
-t
gcr.io/google_containers/spark-driver driver
docker tag gcr.io/google_containers/spark-driver gcr.io/google_containers/spark-driver:
$(TAG)
push
:
containers
gcloud docker push gcr.io/google_containers/spark-base
gcloud docker push gcr.io/google_containers/spark-base:
$(TAG)
gcloud docker push gcr.io/google_containers/spark-worker
gcloud docker push gcr.io/google_containers/spark-worker:
$(TAG)
gcloud docker push gcr.io/google_containers/spark-master
gcloud docker push gcr.io/google_containers/spark-master:
$(TAG)
gcloud docker push gcr.io/google_containers/spark-driver
gcloud docker push gcr.io/google_containers/spark-driver:
$(TAG)
clean
:
examples/spark/images/base/Dockerfile
View file @
63c512cf
...
...
@@ -3,15 +3,35 @@ FROM java:latest
RUN
apt-get update
-y
RUN
apt-get
install
-y
scala
# Get Spark from some apache mirror.
ENV
hadoop_ver 2.6.1
ENV
spark_ver 1.5.1
# Get Hadoop from US Apache mirror and extract just the native
# libs. (Until we care about running HDFS with these containers, this
# is all we need.)
RUN
mkdir
-p
/opt
&&
\
cd
/opt
&&
\
wget http://apache.mirrors.pair.com/spark/spark-1.4.0/spark-1.4.0-bin-hadoop2.6.tgz
&&
\
tar
-zvxf
spark-1.4.0-bin-hadoop2.6.tgz
&&
\
rm
spark-1.4.0-bin-hadoop2.6.tgz
&&
\
ln
-s
spark-1.4.0-bin-hadoop2.6 spark
&&
\
echo
Spark installed
in
/opt
wget http://www.us.apache.org/dist/hadoop/common/hadoop-
${
hadoop_ver
}
/hadoop-
${
hadoop_ver
}
.tar.gz
&&
\
tar
-zvxf
hadoop-
${
hadoop_ver
}
.tar.gz hadoop-
${
hadoop_ver
}
/lib/native
&&
\
rm
hadoop-
${
hadoop_ver
}
.tar.gz
&&
\
ln
-s
hadoop-
${
hadoop_ver
}
hadoop
&&
\
echo
Hadoop
${
hadoop_ver
}
native libraries installed
in
/opt/hadoop/lib/native
# Get Spark from US Apache mirror.
RUN
mkdir
-p
/opt
&&
\
cd
/opt
&&
\
wget http://www.us.apache.org/dist/spark/spark-
${
spark_ver
}
/spark-
${
spark_ver
}
-bin-hadoop2
.6.tgz
&&
\
tar
-zvxf
spark-
${
spark_ver
}
-bin-hadoop2
.6.tgz
&&
\
rm
spark-
${
spark_ver
}
-bin-hadoop2
.6.tgz
&&
\
ln
-s
spark-
${
spark_ver
}
-bin-hadoop2
.6 spark
&&
\
echo
Spark
${
spark_ver
}
installed
in
/opt
# Add the GCS connector.
RUN
wget
-O
/opt/spark/lib/gcs-connector-latest-hadoop2.jar https://storage.googleapis.com/hadoop-lib/gcs/gcs-connector-latest-hadoop2.jar
ADD
log4j.properties /opt/spark/conf/log4j.properties
ADD
setup_client.sh /
ADD
start-common.sh /
ADD
core-site.xml /opt/spark/conf/core-site.xml
ADD
spark-defaults.conf /opt/spark/conf/spark-defaults.conf
ENV
PATH $PATH:/opt/spark/bin
examples/spark/images/base/core-site.xml
0 → 100644
View file @
63c512cf
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>
fs.gs.impl
</name>
<value>
com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem
</value>
<description>
The FileSystem for gs: (GCS) uris.
</description>
</property>
<property>
<name>
fs.AbstractFileSystem.gs.impl
</name>
<value>
com.google.cloud.hadoop.fs.gcs.GoogleHadoopFS
</value>
<description>
The AbstractFileSystem for gs: (GCS) uris. Only necessary for use with Hadoop 2.
</description>
</property>
<property>
<name>
fs.gs.project.id
</name>
<value>
NOT_RUNNING_INSIDE_GCE
</value>
</property>
</configuration>
examples/spark/images/base/spark-defaults.conf
0 → 100644
View file @
63c512cf
spark
.
master
spark
://
spark
-
master
:
7077
spark
.
executor
.
extraClassPath
/
opt
/
spark
/
lib
/
gcs
-
connector
-
latest
-
hadoop2
.
jar
spark
.
driver
.
extraClassPath
/
opt
/
spark
/
lib
/
gcs
-
connector
-
latest
-
hadoop2
.
jar
spark
.
driver
.
extraLibraryPath
/
opt
/
hadoop
/
lib
/
native
spark
.
app
.
id
KubernetesSpark
examples/spark/images/base/start-common.sh
0 → 100755
View file @
63c512cf
#!/bin/bash
# Copyright 2015 The Kubernetes Authors 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.
PROJECT_ID
=
$(
curl
-s
-H
"Metadata-Flavor: Google"
http://metadata.google.internal/computeMetadata/v1/project/project-id
)
if
[[
-n
"
${
PROJECT_ID
}
"
]]
;
then
sed
-i
"s/NOT_RUNNING_INSIDE_GCE/
${
PROJECT_ID
}
/"
/opt/spark/conf/core-site.xml
fi
# We don't want any of the incoming service variables, we'd rather use
# DNS. But this one interferes directly with Spark.
unset
SPARK_MASTER_PORT
# spark.{executor,driver}.extraLibraryPath don't actually seem to
# work, this seems to be the only reliable way to get the native libs
# picked up.
export
LD_LIBRARY_PATH
=
${
LD_LIBRARY_PATH
}
:/opt/hadoop/lib/native
examples/spark/images/driver/Dockerfile
View file @
63c512cf
FROM
gcr.io/google_containers/spark-base:
1.4.0_v1
FROM
gcr.io/google_containers/spark-base:
latest
ADD
start.sh /start.sh
CMD
["/start.sh"]
examples/spark/images/driver/start.sh
View file @
63c512cf
...
...
@@ -14,9 +14,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
echo
"
$SPARK_MASTER_SERVICE_HOST
spark-master"
>>
/etc/hosts
echo
"SPARK_LOCAL_HOSTNAME=
$(
hostname
-i
)
"
>>
/opt/spark/conf/spark-env.sh
echo
"MASTER=spark://spark-master:
$SPARK_MASTER_SERVICE_PORT
"
>>
/opt/spark/conf/spark-env.sh
.
/start-common.sh
echo
"Use kubectl exec spark-driver -it bash to invoke commands"
while
true
;
do
sleep
100
...
...
examples/spark/images/master/Dockerfile
View file @
63c512cf
FROM
gcr.io/google_containers/spark-base:
1.4.0_v1
FROM
gcr.io/google_containers/spark-base:
latest
ADD
start.sh /
ADD
log4j.properties /opt/spark/conf/log4j.properties
EXPOSE
7077
EXPOSE
7077
8080
ENTRYPOINT
["/start.sh"]
examples/spark/images/master/start.sh
View file @
63c512cf
...
...
@@ -14,6 +14,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
export
SPARK_MASTER_PORT
=
${
SPARK_MASTER_SERVICE_PORT
:-
7077
}
.
/start-common.sh
echo
"
$(
hostname
-i
)
spark-master"
>>
/etc/hosts
export
SPARK_LOCAL_HOSTNAME
=
spark-master
export
SPARK_MASTER_IP
=
spark-master
/opt/spark/sbin/start-master.sh
tail
-F
/opt/spark/logs/
*
examples/spark/images/worker/Dockerfile
View file @
63c512cf
FROM
gcr.io/google_containers/spark-base:
1.4.0_v1
FROM
gcr.io/google_containers/spark-base:
latest
ADD
start.sh /
ADD
log4j.properties /opt/spark/conf/log4j.properties
EXPOSE
8080
ENTRYPOINT
["/start.sh"]
examples/spark/images/worker/start.sh
View file @
63c512cf
...
...
@@ -14,15 +14,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
if
[[
${
SPARK_MASTER_SERVICE_HOST
}
==
""
]]
;
then
echo
"Spark Master service must be created before starting any workers"
sleep
30
# To postpone pod restart
exit
1
fi
.
/start-common.sh
echo
"
${
SPARK_MASTER_SERVICE_HOST
}
spark-master"
>>
/etc/hosts
export
SPARK_LOCAL_HOSTNAME
=
$(
hostname
-i
)
/opt/spark/sbin/start-slave.sh spark://spark-master:
${
SPARK_MASTER_SERVICE_PORT
}
/opt/spark/sbin/start-slave.sh spark://spark-master:7077
tail
-F
/opt/spark/logs/
*
examples/spark/spark-driver-controller.yaml
0 → 100644
View file @
63c512cf
kind
:
ReplicationController
apiVersion
:
v1
metadata
:
name
:
spark-driver-controller
labels
:
component
:
spark-driver
spec
:
replicas
:
1
selector
:
component
:
spark-driver
template
:
metadata
:
labels
:
component
:
spark-driver
spec
:
containers
:
-
name
:
spark-driver
image
:
gcr.io/google_containers/spark-driver:1.5.1_v1
resources
:
requests
:
cpu
:
100m
examples/spark/spark-driver.json
deleted
100644 → 0
View file @
139e158f
{
"kind"
:
"Pod"
,
"apiVersion"
:
"v1"
,
"metadata"
:
{
"name"
:
"spark-driver"
,
"labels"
:
{
"name"
:
"spark-driver"
}
},
"spec"
:
{
"containers"
:
[
{
"name"
:
"spark-driver"
,
"image"
:
"gcr.io/google_containers/spark-driver:1.4.0_v1"
,
"resources"
:
{
"limits"
:
{
"cpu"
:
"100m"
}
}
}
]
}
}
examples/spark/spark-gluster/spark-master-controller.yaml
View file @
63c512cf
...
...
@@ -3,7 +3,7 @@ apiVersion: v1
metadata
:
name
:
spark-master-controller
labels
:
component
:
spark-master
-controller
component
:
spark-master
spec
:
replicas
:
1
selector
:
...
...
@@ -15,14 +15,14 @@ spec:
spec
:
containers
:
-
name
:
spark-master
image
:
gcr.io/google_containers/spark-master
image
:
gcr.io/google_containers/spark-master
:1.5.1_v1
ports
:
-
containerPort
:
7077
volumeMounts
:
-
mountPath
:
/mnt/glusterfs
name
:
glusterfsvol
resources
:
limi
ts
:
reques
ts
:
cpu
:
100m
volumes
:
-
name
:
glusterfsvol
...
...
examples/spark/spark-gluster/spark-master-service.yaml
View file @
63c512cf
...
...
@@ -9,4 +9,4 @@ spec:
-
port
:
7077
targetPort
:
7077
selector
:
component
:
spark-master
-controller
component
:
spark-master
examples/spark/spark-gluster/spark-worker-controller.yaml
View file @
63c512cf
...
...
@@ -12,18 +12,18 @@ spec:
metadata
:
labels
:
component
:
spark-worker
uses
:
spark-master
-controller
uses
:
spark-master
spec
:
containers
:
-
name
:
spark-worker
image
:
gcr.io/google_containers/spark-worker
image
:
gcr.io/google_containers/spark-worker
:1.5.1_v1
ports
:
-
containerPort
:
8888
volumeMounts
:
-
mountPath
:
/mnt/glusterfs
name
:
glusterfsvol
resources
:
limi
ts
:
reques
ts
:
cpu
:
100m
volumes
:
-
name
:
glusterfsvol
...
...
examples/spark/spark-master-controller.yaml
0 → 100644
View file @
63c512cf
kind
:
ReplicationController
apiVersion
:
v1
metadata
:
name
:
spark-master-controller
labels
:
component
:
spark-master
spec
:
replicas
:
1
selector
:
component
:
spark-master
template
:
metadata
:
labels
:
component
:
spark-master
spec
:
containers
:
-
name
:
spark-master
image
:
gcr.io/google_containers/spark-master:1.5.1_v1
ports
:
-
containerPort
:
7077
-
containerPort
:
8080
resources
:
requests
:
cpu
:
100m
examples/spark/spark-master-service.json
deleted
100644 → 0
View file @
139e158f
{
"kind"
:
"Service"
,
"apiVersion"
:
"v1"
,
"metadata"
:
{
"name"
:
"spark-master"
,
"labels"
:
{
"name"
:
"spark-master"
}
},
"spec"
:
{
"ports"
:
[
{
"port"
:
7077
,
"targetPort"
:
7077
}
],
"selector"
:
{
"name"
:
"spark-master"
}
}
}
examples/spark/spark-master-service.yaml
0 → 100644
View file @
63c512cf
kind
:
Service
apiVersion
:
v1
metadata
:
name
:
spark-master
labels
:
component
:
spark-master-service
spec
:
ports
:
-
port
:
7077
targetPort
:
7077
selector
:
component
:
spark-master
examples/spark/spark-master.json
deleted
100644 → 0
View file @
139e158f
{
"kind"
:
"Pod"
,
"apiVersion"
:
"v1"
,
"metadata"
:
{
"name"
:
"spark-master"
,
"labels"
:
{
"name"
:
"spark-master"
}
},
"spec"
:
{
"containers"
:
[
{
"name"
:
"spark-master"
,
"image"
:
"gcr.io/google_containers/spark-master:1.4.0_v1"
,
"ports"
:
[
{
"containerPort"
:
7077
}
],
"resources"
:
{
"limits"
:
{
"cpu"
:
"100m"
}
}
}
]
}
}
examples/spark/spark-webui.yaml
0 → 100644
View file @
63c512cf
kind
:
Service
apiVersion
:
v1
metadata
:
name
:
spark-webui
spec
:
ports
:
-
port
:
8080
targetPort
:
8080
selector
:
component
:
spark-master
type
:
LoadBalancer
examples/spark/spark-worker-controller.json
deleted
100644 → 0
View file @
139e158f
{
"kind"
:
"ReplicationController"
,
"apiVersion"
:
"v1"
,
"metadata"
:
{
"name"
:
"spark-worker-controller"
,
"labels"
:
{
"name"
:
"spark-worker"
}
},
"spec"
:
{
"replicas"
:
3
,
"selector"
:
{
"name"
:
"spark-worker"
},
"template"
:
{
"metadata"
:
{
"labels"
:
{
"name"
:
"spark-worker"
,
"uses"
:
"spark-master"
}
},
"spec"
:
{
"containers"
:
[
{
"name"
:
"spark-worker"
,
"image"
:
"gcr.io/google_containers/spark-worker:1.4.0_v1"
,
"ports"
:
[
{
"hostPort"
:
8888
,
"containerPort"
:
8888
}
],
"resources"
:
{
"limits"
:
{
"cpu"
:
"100m"
}
}
}
]
}
}
}
}
examples/spark/spark-worker-controller.yaml
0 → 100644
View file @
63c512cf
kind
:
ReplicationController
apiVersion
:
v1
metadata
:
name
:
spark-worker-controller
labels
:
component
:
spark-worker
spec
:
replicas
:
3
selector
:
component
:
spark-worker
template
:
metadata
:
labels
:
component
:
spark-worker
uses
:
spark-master
spec
:
containers
:
-
name
:
spark-worker
image
:
gcr.io/google_containers/spark-worker:1.5.1_v1
ports
:
-
containerPort
:
8888
resources
:
requests
:
cpu
:
100m
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment