我正在使用metric server来获取Kubernetes集群的使用情况。但是为了从主机外部使用它,我需要使用“ kubectl代理”。但是我不想这样做,因为它不打算在后台运行。我希望它可以作为服务连续运行
我如何实现这些目标
预期产量 curl clusterip:8001 / apis / metrics.k8s.io / v1beta1 / nodes
{
"kind": "NodeMetricsList","apiVersion": "metrics.k8s.io/v1beta1","metadata": {
"selfLink": "/apis/metrics.k8s.io/v1beta1/nodes"
},"items": [
{
"metadata": {
"name": "manhattan-master","selfLink": "/apis/metrics.k8s.io/v1beta1/nodes/manhattan-master","creationTimestamp": "2019-11-15T04:26:47Z"
},"timestamp": "2019-11-15T04:26:33Z","window": "30s","usage": {
"cpu": "222998424n","memory": "3580660Ki"
}
}
]
我尝试使用 LoadBalancig服务 metrics-server-service.yaml
apiVersion: v1
kind: Service
metadata:
name: metrics-server
namespace: kube-system
labels:
kubernetes.io/name: "Metrics-server"
kubernetes.io/cluster-service: "true"
spec:
selector:
k8s-app: metrics-server
ports:
- port: 443
protocol: TCP
targetPort: main-port
externalTrafficPolicy: Local
type: LoadBalancer
kubectl描述服务指标-master -n kube-system
[root@manhattan-master 1.8+]# kubectl describe service metrics-server -n kube-system
Name: metrics-server
Namespace: kube-system
Labels: kubernetes.io/cluster-service=true
kubernetes.io/name=Metrics-server
Annotations: kubectl.kubernetes.io/last-applied-configuration:
{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"kubernetes.io/cluster-service":"true","kubernetes.io/name":"Me...
Selector: k8s-app=metrics-server
Type: LoadBalancer
IP: 10.110.223.216
Port: <unset> 443/TCP
TargetPort: main-port/TCP
NodePort: <unset> 31043/TCP
Endpoints: 10.32.0.7:4443
Session Affinity: None
External Traffic Policy: Local
HealthCheck NodePort: 32208
Events: <none>