mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
/test/soak
This commit is contained in:
parent
bcc783c594
commit
80ca298577
@ -18,7 +18,8 @@ go_binary(
|
|||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/api/errors:go_default_library",
|
"//pkg/api/errors:go_default_library",
|
||||||
"//pkg/api/unversioned:go_default_library",
|
"//pkg/api/unversioned:go_default_library",
|
||||||
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
"//pkg/api/v1:go_default_library",
|
||||||
|
"//pkg/client/clientset_generated/release_1_5:go_default_library",
|
||||||
"//pkg/client/restclient:go_default_library",
|
"//pkg/client/restclient:go_default_library",
|
||||||
"//pkg/client/unversioned/clientcmd:go_default_library",
|
"//pkg/client/unversioned/clientcmd:go_default_library",
|
||||||
"//pkg/runtime:go_default_library",
|
"//pkg/runtime:go_default_library",
|
||||||
|
@ -33,7 +33,8 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/errors"
|
"k8s.io/kubernetes/pkg/api/errors"
|
||||||
"k8s.io/kubernetes/pkg/api/unversioned"
|
"k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
"k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_5"
|
||||||
"k8s.io/kubernetes/pkg/client/restclient"
|
"k8s.io/kubernetes/pkg/client/restclient"
|
||||||
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
|
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
|
||||||
"k8s.io/kubernetes/pkg/runtime"
|
"k8s.io/kubernetes/pkg/runtime"
|
||||||
@ -88,9 +89,9 @@ func main() {
|
|||||||
glog.Fatalf("Failed to make client: %v", err)
|
glog.Fatalf("Failed to make client: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
var nodes *api.NodeList
|
var nodes *v1.NodeList
|
||||||
for start := time.Now(); time.Since(start) < nodeListTimeout; time.Sleep(2 * time.Second) {
|
for start := time.Now(); time.Since(start) < nodeListTimeout; time.Sleep(2 * time.Second) {
|
||||||
nodes, err = client.Nodes().List(api.ListOptions{})
|
nodes, err = client.Nodes().List(v1.ListOptions{})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
@ -112,7 +113,7 @@ func main() {
|
|||||||
queries := *queriesAverage * len(nodes.Items) * *podsPerNode
|
queries := *queriesAverage * len(nodes.Items) * *podsPerNode
|
||||||
|
|
||||||
// Create the namespace
|
// Create the namespace
|
||||||
got, err := client.Namespaces().Create(&api.Namespace{ObjectMeta: api.ObjectMeta{GenerateName: "serve-hostnames-"}})
|
got, err := client.Namespaces().Create(&v1.Namespace{ObjectMeta: v1.ObjectMeta{GenerateName: "serve-hostnames-"}})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
glog.Fatalf("Failed to create namespace: %v", err)
|
glog.Fatalf("Failed to create namespace: %v", err)
|
||||||
}
|
}
|
||||||
@ -137,18 +138,18 @@ func main() {
|
|||||||
// Create a service for these pods.
|
// Create a service for these pods.
|
||||||
glog.Infof("Creating service %s/serve-hostnames", ns)
|
glog.Infof("Creating service %s/serve-hostnames", ns)
|
||||||
// Make several attempts to create a service.
|
// Make several attempts to create a service.
|
||||||
var svc *api.Service
|
var svc *v1.Service
|
||||||
for start := time.Now(); time.Since(start) < serviceCreateTimeout; time.Sleep(2 * time.Second) {
|
for start := time.Now(); time.Since(start) < serviceCreateTimeout; time.Sleep(2 * time.Second) {
|
||||||
t := time.Now()
|
t := time.Now()
|
||||||
svc, err = client.Services(ns).Create(&api.Service{
|
svc, err = client.Services(ns).Create(&v1.Service{
|
||||||
ObjectMeta: api.ObjectMeta{
|
ObjectMeta: v1.ObjectMeta{
|
||||||
Name: "serve-hostnames",
|
Name: "serve-hostnames",
|
||||||
Labels: map[string]string{
|
Labels: map[string]string{
|
||||||
"name": "serve-hostname",
|
"name": "serve-hostname",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Spec: api.ServiceSpec{
|
Spec: v1.ServiceSpec{
|
||||||
Ports: []api.ServicePort{{
|
Ports: []v1.ServicePort{{
|
||||||
Protocol: "TCP",
|
Protocol: "TCP",
|
||||||
Port: 9376,
|
Port: 9376,
|
||||||
TargetPort: intstr.FromInt(9376),
|
TargetPort: intstr.FromInt(9376),
|
||||||
@ -190,19 +191,19 @@ func main() {
|
|||||||
for start := time.Now(); time.Since(start) < podCreateTimeout; time.Sleep(2 * time.Second) {
|
for start := time.Now(); time.Since(start) < podCreateTimeout; time.Sleep(2 * time.Second) {
|
||||||
glog.Infof("Creating pod %s/%s on node %s", ns, podName, node.Name)
|
glog.Infof("Creating pod %s/%s on node %s", ns, podName, node.Name)
|
||||||
t := time.Now()
|
t := time.Now()
|
||||||
_, err = client.Pods(ns).Create(&api.Pod{
|
_, err = client.Pods(ns).Create(&v1.Pod{
|
||||||
ObjectMeta: api.ObjectMeta{
|
ObjectMeta: v1.ObjectMeta{
|
||||||
Name: podName,
|
Name: podName,
|
||||||
Labels: map[string]string{
|
Labels: map[string]string{
|
||||||
"name": "serve-hostname",
|
"name": "serve-hostname",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Spec: api.PodSpec{
|
Spec: v1.PodSpec{
|
||||||
Containers: []api.Container{
|
Containers: []v1.Container{
|
||||||
{
|
{
|
||||||
Name: "serve-hostname",
|
Name: "serve-hostname",
|
||||||
Image: "gcr.io/google_containers/serve_hostname:v1.4",
|
Image: "gcr.io/google_containers/serve_hostname:v1.4",
|
||||||
Ports: []api.ContainerPort{{ContainerPort: 9376}},
|
Ports: []v1.ContainerPort{{ContainerPort: 9376}},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
NodeName: node.Name,
|
NodeName: node.Name,
|
||||||
@ -236,18 +237,18 @@ func main() {
|
|||||||
|
|
||||||
glog.Info("Waiting for the serve-hostname pods to be ready")
|
glog.Info("Waiting for the serve-hostname pods to be ready")
|
||||||
for _, podName := range podNames {
|
for _, podName := range podNames {
|
||||||
var pod *api.Pod
|
var pod *v1.Pod
|
||||||
for start := time.Now(); time.Since(start) < podStartTimeout; time.Sleep(5 * time.Second) {
|
for start := time.Now(); time.Since(start) < podStartTimeout; time.Sleep(5 * time.Second) {
|
||||||
pod, err = client.Pods(ns).Get(podName)
|
pod, err = client.Pods(ns).Get(podName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
glog.Warningf("Get pod %s/%s failed, ignoring for %v: %v", ns, podName, err, podStartTimeout)
|
glog.Warningf("Get pod %s/%s failed, ignoring for %v: %v", ns, podName, err, podStartTimeout)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if pod.Status.Phase == api.PodRunning {
|
if pod.Status.Phase == v1.PodRunning {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if pod.Status.Phase != api.PodRunning {
|
if pod.Status.Phase != v1.PodRunning {
|
||||||
glog.Warningf("Gave up waiting on pod %s/%s to be running (saw %v)", ns, podName, pod.Status.Phase)
|
glog.Warningf("Gave up waiting on pod %s/%s to be running (saw %v)", ns, podName, pod.Status.Phase)
|
||||||
} else {
|
} else {
|
||||||
glog.Infof("%s/%s is running", ns, podName)
|
glog.Infof("%s/%s is running", ns, podName)
|
||||||
|
Loading…
Reference in New Issue
Block a user