code: def __init__(
      self,
      node_role=None,
      pool_address=None,
      k8s_config=None,
      k8s_namespace=None,
  ):
      from kubernetes import client
  
      self._node_role = node_role
      self._pool_address = pool_address
      self._k8s_config = k8s_config
  
      verify_ssl = bool(int(os.environ.get("KUBE_VERIFY_SSL", "1")))
      if not verify_ssl:
          c = client.Configuration()
          c.verify_ssl = False
          client.Configuration.set_default(c)
  
      self._k8s_namespace = (
          k8s_namespace
          or os.environ.get("MARS_K8S_POD_NAMESPACE")
          or "default"
      )
      self._service_name = os.environ.get("MARS_K8S_SERVICE_NAME")
      self._full_label_selector = None
      self._client = client.CoreV1Api(
          client.ApiClient(self._k8s_config)
      )
  
      self._pod_to_ep = dict()
  
file_path: mars/mars/deploy/kubernetes/core.py
imports: import asyncio
  import logging
  import os
  from typing import AsyncGenerator, Dict, List, Optional, TypeVar
  from ...services.cluster import WebClusterAPI
  from ...services.cluster.backends import register_cluster_backend, AbstractClusterBackend
  from ...services.cluster.core import NodeRole
  from ..utils import wait_all_supervisors_ready, next_in_thread
  from .config import MarsReplicationConfig
label_desc: Use image node_id 1 to create a new K8SClusterBackend object from inherited base classes: AbstractClusterBackend with example: obj = K8SClusterBackend(node_role, pool_address, k8s_config, k8s_namespace)