**Apache Airflow version**: 2.0.1


**Kubernetes version (if you are using kubernetes)** (use `kubectl version`): 1.20.5

**Environment**:

- **Cloud provider or hardware configuration**: Azure AKS

**What happened**:

When task or dag name is defined with a non ascii character, pod creations fails with a kubernetes.client.rest.ApiException: (422)
(task maintains scheduled status)
this is because the hostname defined for the pod is based on dag and task name...

**What you expected to happen**:

Create the pod and run the task

**How to reproduce it**:
Run a task with name "campaña" on K8s executor,

Error log
```
{"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message":"Pod \"dagnamecampaña.0fb696e661e347968216df454b41b56f\" is invalid: metadata.name: Invalid value: \"dagnamecampaña.0fb696e661e347968216df454b41b56f\": a lowercase RFC 1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0
-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')","reason":"Invalid"
```



airflow/kubernetes/kubernetes_helper_functions.py
#
#
import logging
from typing import Dict, Optional
from dateutil import parser
from airflow.models.taskinstance import TaskInstanceKey
log = logging.getLogger(__name__)
def _strip_unsafe_kubernetes_special_chars(string: str) -> str:
    """
    Kubernetes only supports lowercase alphanumeric characters, "-" and "." in
    the pod name.
    However, there are special rules about how "-" and "." can be used so let's
    only keep
    alphanumeric chars  see here for detail:
    https://kubernetes.io/docs/concepts/overview/working-with-objects/names/
    :param string: The requested Pod name
    :return: Pod name stripped of any unsafe characters
    """
    return ''.join(ch.lower() for ch in list(string) if ch.isalnum())
def create_pod_id(dag_id: str, task_id: str) -> str: