API Server 6443端口、8080端口、443端口的区别
8080 端口与 6443 端口#
Kubernets API Server进程提供Kubernetes API。通常情况下,有一个进程运行在单一kubernetes-master节点上。
默认情况,Kubernetes API Server提供HTTP的两个端口:
1.Insecure Port
- HTTP服务
- 默认端口8080,修改标识 --insecure-port,此值默认为0,表示此端口默认是关闭的。如果需要开启 HTTP 非安全端口模式,可以把 --insecure-port 值设置为8080
- 默认IP是本地主机,修改标识 --insecure-bind-address
- 在HTTP中没有认证和授权检查
- 主机访问受保护
2.Secure Port
- 默认端口6443,修改标识—secure-port
- 默认IP是首个非本地主机的网络接口,修改标识 --bind-address
- HTTPS服务。设置证书和秘钥的标识,--tls-cert-file,--tls-private-key-file
- 认证方式,令牌文件或者客户端证书
- 使用基于策略的授权方式
443 端口#
那 443 端口又是什么呢?
443 端口是 default 命名空间下的一个名为 kubernetes 的service 的端口,
$ kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 32h
使用 describe 命令查看详细信息,可以发现这个 kubernetes service 其实就是 API Server 的入口地址,其后端的 endpoint 依然指向的是 API Server 的 Pod IP (也就是 API Server 监听的地址) 的 6443 端口。主要用于在集群内即 pod 中访问 apiserver。
$ kubectl describe svc kubernetes Name: kubernetes Namespace: default Labels: component=apiserver provider=kubernetes Annotations: <none> Selector: <none> Type: ClusterIP IP Families: <none> IP: 10.96.0.1 IPs: <none> Port: https 443/TCP TargetPort: 6443/TCP Endpoints: 172.18.0.3:6443 Session Affinity: None Events: <none>
关于这个名为 kubernetes 的 service,可以参考这篇:kube-apiserver 中 apiserver service 的实现 · 田飞雨 (tianfeiyu.com)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南