본문으로 건너뛰기

Selenium Grid 설정

Selenium Grid 설정

  • Selenium Grid helm chart
    https://github.com/SeleniumHQ/docker-selenium/blob/trunk/charts/selenium-grid/README.md

  • Node Deployment의 max concurrency 설정 변경

    spec:
    containers:
    - env:
    - name: SE_NODE_MAX_SESSIONS
    value: "3"
    - name: SE_NODE_OVERRIDE_MAX_SESSIONS
    value: "true"
  • 외부 노드 추가

  • ingress에서 tcp 4444, 4442, 4443 Expose 필요함.

    1. configmap에 해당 내용 추가
    apiVersion: v1
    data:
    '4442': jenkins/selenium-hub:4442
    '4443': jenkins/selenium-hub:4443
    kind: ConfigMap
    metadata:
    creationTimestamp: '2023-09-01T07:29:19Z'
    managedFields: <생략>
    name: selenium-hub-tcp-services
    namespace: jenkins
    resourceVersion: '146411402'
    uid: 286d5a55-c34b-40a8-b482-93d4503612ab
    1. Ingress controller Service에 port 설정 추가
    - name: proxied-tcp-4442
    nodePort: 30161
    port: 4442
    protocol: TCP
    targetPort: 4442
    - name: proxied-tcp-4443
    nodePort: 32092
    port: 4443
    protocol: TCP
    targetPort: 4443
    1. Ingress controller Deployment에 위 configmap 설정 추가
    spec:
    containers:
    - args:
    - /nginx-ingress-controller

    - '--tcp-services-configmap=jenkins/selenium-hub-tcp-services'
    1. devtools 서비스 사용이 안될 경우 selenium-node-config의 SE_NODE_GRID_URL이 정상적으로 접근 되는 URL 인지 확인한다.
  • 외부 노드에서 hub로 접속하는 방법