Використання HTTP-проксі для доступу до Kubernetes API
Ця сторінка показує, як використовувати HTTP-проксі для доступу до Kubernetes API.
Перш ніж ви розпочнете
Вам треба мати кластер Kubernetes, а також інструмент командного рядка kubectl має бути налаштований для роботи з вашим кластером. Рекомендується виконувати ці настанови у кластері, що має щонайменше два вузли, які не виконують роль вузлів управління. Якщо у вас немає кластера, ви можете створити його, за допомогою minikube або використовувати одну з цих пісочниць:
Для перевірки версії введітьkubectl version
.Якщо у вас ще немає застосунку, що працює у вашому кластері, запустіть застосунок Hello world, скориставшись:
kubectl create deployment hello-app --image=gcr.io/google-samples/hello-app:2.0 --port=8080
Використання kubectl для запуску проксі-сервера
Ця команда запускає проксі до сервера Kubernetes API:
kubectl proxy --port=8080
Дослідження Kubernetes API
Коли проксі-сервер працює, ви можете досліджувати API за допомогою curl
, wget
або оглядача.
Отримання версій API:
curl http://localhost:8080/api/
Вихідні дані повинні виглядати приблизно так:
{
"kind": "APIVersions",
"versions": [
"v1"
],
"serverAddressByClientCIDRs": [
{
"clientCIDR": "0.0.0.0/0",
"serverAddress": "10.0.2.15:8443"
}
]
}
Отримання списку Podʼів:
curl http://localhost:8080/api/v1/namespaces/default/pods
Вихідні дані повинні виглядати приблизно так:
{
"kind": "PodList",
"apiVersion": "v1",
"metadata": {
"resourceVersion": "33074"
},
"items": [
{
"metadata": {
"name": "kubernetes-bootcamp-2321272333-ix8pt",
"generateName": "kubernetes-bootcamp-2321272333-",
"namespace": "default",
"uid": "ba21457c-6b1d-11e6-85f7-1ef9f1dab92b",
"resourceVersion": "33003",
"creationTimestamp": "2016-08-25T23:43:30Z",
"labels": {
"pod-template-hash": "2321272333",
"run": "kubernetes-bootcamp"
},
...
Що далі
Дізнайтеся більше про kubectl proxy.