<a id="grpc-upstreams"></a>

# gRPC

Для поддержки gRPC-приложений с помощью ресурсов `VirtualServer` необходимо добавить поле `type: grpc` в `upstream`.
Если этот параметр не указан, по умолчанию будет использован протокол `http`.

## Предварительная настройка

- Необходимо включить прослушиватель `HTTP/2`. См. `http2` в [ConfigMap](https://angie.software//anic/docs/configuration/configmap-resource.md#configmap-resource).
- Ресурсы `VirtualServer` и `VirtualServerRoute` для gRPC-приложений должны включать терминацию TLS.

## Пример

```yaml
apiVersion: k8s.angie.software/v1
kind: VirtualServer
metadata:
  name: grpc-vs
spec:
  host: grpc.example.com
  tls:
    secret: grpc-secret
  upstreams:
  - name: grpc1
    service: grpc-svc
    port: 50051
    type: grpc
  routes:
  - path: /helloworld.Greeter
    action:
      pass: grpc1
```

В этом примере `grpc-svc` — это сервис для gRPC-приложения. Он будет доступен по пути `/helloworld.Greeter`.
Обратите внимание, что в конфигурации `upstream` используется поле `type: grpc`.
