Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Service creation delay when creating many deployments in a short time #1124

Closed
aii-nozomu-oki opened this issue May 24, 2023 · 1 comment · Fixed by #1128
Closed

Service creation delay when creating many deployments in a short time #1124

aii-nozomu-oki opened this issue May 24, 2023 · 1 comment · Fixed by #1128
Assignees

Comments

@aii-nozomu-oki
Copy link
Contributor

aii-nozomu-oki commented May 24, 2023

How to reproduce

Skupper instalation

kubectl create namespace app
kubectl config set-context --current --namespace app
kubectl apply -f https://raw.githubusercontent.com/skupperproject/skupper/1.3.0/cmd/site-controller/deploy-watch-current-ns.yaml

Create skupper-site.yaml

apiVersion: v1
data:
  console: "false"
  console-authentication: internal
  console-password: ""
  console-user: ""
  flow-collector: "false"
  ingress: none
  name: app
  router-console: "false"
  router-logging: ""
  router-mode: edge
  service-controller: "true"
  service-sync: "true"
kind: ConfigMap
metadata:
  name: skupper-site
  namespace: app
kubectl apply -f skupper-site.yaml

Run the following script to create 100 annotated deployments

#!/bin/bash

function create_service () {
    name="$(cat /dev/urandom | tr -dc 'a-z' | fold -w 16 | head -n 1)"
    deploy="
apiVersion: apps/v1
kind: Deployment
metadata:
  name: ${name}
  labels:
    app: ${name}
    env: test
  annotations:
    skupper.io/proxy: \"http\"
    skupper.io/port: \"8080:80\"
spec:
  replicas: 1
  selector:
    matchLabels:
      app: ${name}
  template:
    metadata:
      labels:
        app: ${name}
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80"
    echo "${deploy}" | kubectl apply -f -
}

for i in $(seq 0 99)
do
    create_service
    sleep 1
done

If I watch services, I will see that there is a delay.
Is this expected behavior?

Skupper version

1.3.0

Kubernetes version

Both in K3s v1.27.1+k3s1 and GKE v1.25.8-gke.500, this behavior is confirmed

Related issue

This may be related to #915, as it became apparent while researching it.

@aii-nozomu-oki
Copy link
Contributor Author

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants