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
39f62240
Commit
39f62240
authored
Apr 23, 2016
by
k8s-merge-robot
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #24499 from gmarek/load
Automatic merge from submit-queue Add Services to Load test
parents
4f9e8729
3627bb7b
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
48 additions
and
3 deletions
+48
-3
load.go
test/e2e/load.go
+47
-3
start-kubemark-master.sh
test/kubemark/start-kubemark-master.sh
+1
-0
No files found.
test/e2e/load.go
View file @
39f62240
...
...
@@ -19,6 +19,7 @@ package e2e
import
(
"fmt"
"math/rand"
"os"
"strconv"
"sync"
"time"
...
...
@@ -26,6 +27,7 @@ import (
"k8s.io/kubernetes/pkg/api"
client
"k8s.io/kubernetes/pkg/client/unversioned"
"k8s.io/kubernetes/pkg/labels"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/kubernetes/test/e2e/framework"
.
"github.com/onsi/ginkgo"
...
...
@@ -36,9 +38,9 @@ const (
smallRCSize
=
5
mediumRCSize
=
30
bigRCSize
=
250
smallRCGroupName
=
"load-
test-
small-rc"
mediumRCGroupName
=
"load-
test-
medium-rc"
bigRCGroupName
=
"load-
test-
big-rc"
smallRCGroupName
=
"load-small-rc"
mediumRCGroupName
=
"load-medium-rc"
bigRCGroupName
=
"load-big-rc"
smallRCBatchSize
=
30
mediumRCBatchSize
=
5
bigRCBatchSize
=
1
...
...
@@ -113,6 +115,19 @@ var _ = framework.KubeDescribe("Load capacity", func() {
It
(
name
,
func
()
{
totalPods
:=
itArg
.
podsPerNode
*
nodeCount
configs
=
generateRCConfigs
(
totalPods
,
itArg
.
image
,
itArg
.
command
,
c
,
ns
)
var
services
[]
*
api
.
Service
// Read the environment variable to see if we want to create services
createServices
:=
os
.
Getenv
(
"CREATE_SERVICES"
)
if
createServices
==
"true"
{
framework
.
Logf
(
"Creating services"
)
services
:=
generateServicesForConfigs
(
configs
)
for
_
,
service
:=
range
services
{
_
,
err
:=
c
.
Services
(
ns
)
.
Create
(
service
)
framework
.
ExpectNoError
(
err
)
}
}
else
{
framework
.
Logf
(
"Skipping service creation"
)
}
// Simulate lifetime of RC:
// * create with initial size
...
...
@@ -149,6 +164,13 @@ var _ = framework.KubeDescribe("Load capacity", func() {
// We may want to revisit it in the future.
deletingTime
:=
time
.
Duration
(
totalPods
/
5
)
*
time
.
Second
deleteAllRC
(
configs
,
deletingTime
)
if
createServices
==
"true"
{
for
_
,
service
:=
range
services
{
err
:=
c
.
Services
(
ns
)
.
Delete
(
service
.
Name
)
framework
.
ExpectNoError
(
err
)
}
framework
.
Logf
(
"%v Services created."
,
len
(
services
))
}
})
}
})
...
...
@@ -197,6 +219,28 @@ func generateRCConfigsForGroup(c *client.Client, ns, groupName string, size, cou
return
configs
}
func
generateServicesForConfigs
(
configs
[]
*
framework
.
RCConfig
)
[]
*
api
.
Service
{
services
:=
make
([]
*
api
.
Service
,
0
,
len
(
configs
))
for
_
,
config
:=
range
configs
{
serviceName
:=
config
.
Name
+
"-svc"
labels
:=
map
[
string
]
string
{
"name"
:
config
.
Name
}
service
:=
&
api
.
Service
{
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
serviceName
,
},
Spec
:
api
.
ServiceSpec
{
Selector
:
labels
,
Ports
:
[]
api
.
ServicePort
{{
Port
:
80
,
TargetPort
:
intstr
.
FromInt
(
80
),
}},
},
}
services
=
append
(
services
,
service
)
}
return
services
}
func
sleepUpTo
(
d
time
.
Duration
)
{
time
.
Sleep
(
time
.
Duration
(
rand
.
Int63n
(
d
.
Nanoseconds
())))
}
...
...
test/kubemark/start-kubemark-master.sh
View file @
39f62240
...
...
@@ -51,6 +51,7 @@ kubernetes/server/bin/kube-apiserver \
--token-auth-file
=
/srv/kubernetes/known_tokens.csv
\
--secure-port
=
443
\
--basic-auth-file
=
/srv/kubernetes/basic_auth.csv
\
--service-cluster-ip-range
=
10.0.0.0/16
\
--delete-collection-workers
=
16 &> /var/log/kube-apiserver.log &
# kube-contoller-manager now needs running kube-api server to actually start
...
...
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