kube-apiserver配置详情

kube-apiserver是Kubernetes集群的核心组件,负责API对象的验证和配置,如pods、services等。它作为REST操作的服务端,是集群状态的前端,与其他组件交互的桥梁。
摘要由CSDN通过智能技术生成

kube-apiserver

简介

Kubernetes API 服务器验证并配置 API 对象的数据, 这些对象包括 pods、services、replicationcontrollers 等。 API 服务器为 REST 操作提供服务,并为集群的共享状态提供前端, 所有其他组件都通过该前端进行交互。

kube-apiserver [flags]

选项

--admission-control-config-file string

包含准入控制配置的文件。

--advertise-address string

向集群成员通知 apiserver 消息的 IP 地址。 这个地址必须能够被集群中其他成员访问。 如果 IP 地址为空,将会使用 --bind-address, 如果未指定 --bind-address,将会使用主机的默认接口地址。

--allow-metric-labels stringToString     默认值:[]

允许使用的指标标签到指标值的映射列表。键的格式为 <MetricName>,<LabelNa

安装Kubernetes(K8s)的`kube-apiserver`通常涉及以下几个步骤,假设您正在部署在一个Linux系统上: 1. **获取依赖**: 首先,确保您的系统已经安装了`Docker`和`etcd`,因为`kube-apiserver`是基于这些服务运行的。此外,您需要访问Kubernetes的GitHub仓库或从官方镜像仓库下载最新的`kubectl`。 2. **配置环境变量**: 确保创建并设置好必要的环境变量,如`KUBECONFIG`,它指示API服务器应该在哪里查找配置信息。 3. **构建或下载镜像**: 如果你想要自建,可以使用`go build`命令在Kubernetes源码目录下构建API服务器。如果直接使用,可以在Docker Hub上找到官方镜像`gcr.io/kubernetes/kube-apiserver:v1.x.y`,通过`docker pull`拉取。 4. **启动`etcd`**: `kube-apiserver`需要一个etcd实例作为存储后端,你可以通过运行`etcd`二进制文件启动本地的etcd。 5. **运行`kube-apiserver`**: 使用以下命令替换相应的参数(比如`--cert-dir`, `--client-ca-file`, 和`--service-account-key-file`等),并指定`etcd`的地址来启动它: ```shell kubectl apply -f https://raw.githubusercontent.com/coreos/etcd/master/Documentation/examples/v3_4/client-v3.4.yaml kubectl create secret generic service-account-token --from-literal=token=$(kubectl -n kube-system get secrets $(kubectl get sa default -o jsonpath='{.secrets[0].name}') | cut -d ":" -f2) export ETCDCTL_API=3 etcdctl put /registry.k8s.io/apiservices/default/serviceaccount token "$(kubectl get serviceaccount-token service-account-token -o jsonpath='{.data.token}' | base64)" kubectl run kube-apiserver --image=gcr.io/kubernetes/kube-apiserver:v1.x.y \ --port=6443 \ --service-account-key-file=/var/run/secrets/kubernetes.io/serviceaccount/key.pem \ --service-account-name=default \ --service-cluster-ip-range=10.0.0.0/16 \ --admission-control=... (其他所需的控制插件) \ --etcd-servers=http://localhost:2379 ``` 6. **验证安装**: 使用`kubectl get nodes`检查集群是否正常初始化,并通过`kubectl cluster-info`确认API服务器是否可用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未来AI编程

共鸣===鼓励 打赏您随意

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值