tree f1c2e4b3147af77e23306f841610aafd6db1c6b0
parent 4d5e8f5c221025b8cdce8657bf2f10496be46b27
author cdmikechen <cdmikechen@apache.org> 1692490794 +0800
committer cdmikechen <cdmikechen@apache.org> 1692921049 +0800

SUBMARINE-1402. Update serving to work with k8s 1.25

### What is this PR for?
Some of the serving resource api's are outdated in k8s 1.25 and need to be upgraded.
```
no matches for kind "HorizontalPodAutoscaler" in version "autoscaling/v2beta1"
```
### What type of PR is it?
Hot Fix

### Todos
* [x] - Update seldon to 1.17.1

### What is the Jira issue?
https://issues.apache.org/jira/browse/SUBMARINE-1402

### How should this be tested?
NA

### Screenshots (if appropriate)
NA

### Questions:
* Do the license files need updating? No
* Are there breaking changes for older versions? No
* Does this need new documentation? No

Author: cdmikechen <cdmikechen@apache.org>

Signed-off-by: cdmikechen <cdmikechen@apache.org>

Closes #1096 from cdmikechen/SUBMARINE-1402 and squashes the following commits:

be04226f [cdmikechen] update seldon to 1.17.1
