`
JerryWang_SAP
  • 浏览: 1002975 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

如何在Kubernetes里创建一个Nginx service

阅读更多

Jerry之前的文章如何在Kubernetes里创建一个Nginx应用,已经使用kubectl命令行创建了Pod,但是在kubernetes中,Pod的IP地址会随着Pod的重启而变化,因此用Pod的IP地址来访问我们部署的nginx应用不太合适。

Kubernetes里推荐的方式是用Service来消费nginx服务。

Service为一组Pod提供一个统一的入口,并为它们提供负载均衡

和服务发现支持。

使用如下命令行基于pod创建一个service:

kubectl expose deployment nginx-app --type=NodePort --port=80

收到service/nginx-app exposed消息。

 
 

使用命令行拿到创建成功的service的明细:

kubectl describe service nginx-app

 

使用http://<node_id>:32624访问这个nginx应用:

 

看到上图说明访问nginx成功了。

使用命令行查看nginx访问日志:

kubectl logs nginx-app-f75d46bd9-q6c76

 

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

 
0
0
分享到:
评论

相关推荐

    ingress-nginx-service-nodeport.rar

    标题中的“ingress-nginx-service-nodeport.rar”表明这是一个与Ingress-Nginx控制器相关的压缩文件,特别是关于服务(Service)类型为NodePort的配置。Ingress-Nginx是Kubernetes生态中的一个流行组件,它提供了...

    k8s下部署nginx集群,以及相关yaml文件的编写和说明

    对于Nginx,我们可能会创建一个Service,让其他应用或者外部网络可以通过特定的端口和IP地址访问。 在部署Nginx集群时,你需要编写以下YAML文件: 1. **nginx-deployment.yaml**:这个文件定义了Nginx的Deployment...

    ingress-nginx-controller(含镜像和代码).rar

    ingress-nginx-controller 是 Kubernetes 社区维护的一个项目,它提供了对 Ingress 资源的实现,使得可以通过定义简单的 YAML 文件来管理对外暴露的服务路由。Nginx 作为业界广泛使用的高性能反向代理服务器,其稳定...

    note-K8S v1.12 高可用nginx(极简版).rar

    4. **可选:外部访问**: 如果需要从集群外部访问Nginx服务,可以创建一个NodePort或LoadBalancer类型的Service,前者通过节点的端口暴露服务,后者利用云提供商的负载均衡服务。 5. **监控和日志**: 设置监控指标...

    使用NGINX Web服务器和Kubernetes(部署和服务)的基本头盔图表。拜托,看看赫尔姆医生.zip

    5. **服务暴露**:了解如何创建一个Kubernetes Service来暴露NGINX,可能包括ClusterIP、NodePort、LoadBalancer等不同类型的Service。 6. **使用Helm安装与升级**:学习如何使用Helm命令行工具来安装和升级你的...

    ingress-nginx-controller-1.9.yaml

    前者是为一个基于 Nginx 的 Tomcat 应用创建 Ingress 规则的 YAML 文件,它定义了外部如何通过 Ingress 访问内部的 Tomcat 服务。Ingress 规则通常包含主机名、路径和后端 Service 的映射,可以根据不同的请求条件将...

    Kubernetes泛域名动态Service转发解决方案.docx

    在Nginx配置中,`proxy_pass`指令用于指定后端服务器,当其后面跟随的是可变域名而非IP时,需要设置一个自定义的DNS解析器。这可以通过在`nginx.conf`中添加`resolver`配置项来实现。我们将使用go-dnsmasq作为DNS...

    k8s下部署nginx集群部署方式(相关yaml文件的编写和说明)

    例如,我们可以创建一个Headless Service,为StatefulSet的Pods提供唯一的DNS名称: ```yaml apiVersion: v1 kind: Service metadata: name: nginx spec: type: ClusterIP clusterIP: None ports: - port: 80 ...

    ingress-nginx.tar.gz

    - 在Kubernetes集群中部署Ingress-Nginx通常包括创建Deployment和Service对象,以及配置相关的RBAC权限。`ingress-nginx`目录可能包含这些部署所需的YAML文件。 - 部署完成后,可以通过创建Ingress资源来指定哪些...

    搭建Kubernetes容器集群管理系统-随堂笔记.pdf.pdf

    其中,run命令可以在集群上运行一个Pod,create命令可以使用文件或标准输入的方式创建一个Pod,delete命令可以使用文件或标准输入以及资源名称或标签选择器来删除某个Pod。 12.3 yaml语法规则 yaml是一种标记语言...

    RHCE9认证之Kubernetes容器编排工具学习笔记

    Kubernetes 集群操作包括查看集群信息、创建名称空间、发布第一个容器化应用程序、配置启动 Kubernetes 等。Kubernetes 提供了多种集群操作方式,帮助用户快速部署和管理应用程序。 Kubernetes 监控和恢复 ...

    23 声明式API与Kubernetes编程范式.pdf

    命令式操作通常是指用户通过执行具体的命令来操作容器和服务,比如使用`docker service create`来创建一个服务,并用`docker service update`来更新服务。这种操作模式是直接告诉系统“做什么”,系统随后执行具体的...

    note-010-K8S v1.12 高可用nginx.rar

    5. **Service配置**:定义一个Kubernetes Service,为Nginx提供负载均衡和内部访问。可以设置`type: LoadBalancer`或`type: ClusterIP`,前者将Service暴露到外部网络,后者只在集群内部可见。通过`selector`字段,...

    linux服务器的自动部署k8s脚本 up.sh

    配置Helm,在Kubernetes集群中创建运行Helm的tiller,并初始化Helm 用Helm安装Nginx Ingress Controller 用Kubernetes部署Metrics Server 安装Helm包管理工具 配置Helm,在 Kubernetes集群中创建运行Helm 的 tiller...

    Kubernetes Dashboard实验手册1

    在Dashboard中选择"CREATE FROM TEXT INPUT",然后输入包含Pod定义的YAML代码,如创建一个简单的Nginx Pod。完成后,点击"UPLOAD",Pod将被创建,你可以通过点击Pod名称查看其详细信息。 3. "CREATE FROM FILE"方式...

    kubernetes中文文档

    综上所述,Kubernetes 不仅仅是一个容器编排工具,而是一个全面的平台,旨在提供高度可扩展、可靠且易于管理的基础架构。通过理解其核心概念、架构和设计原则,用户可以更好地利用 Kubernetes 来构建和部署复杂的...

    38 从外界连通Service与Service调试“三板斧”.pdf

    在这种方式中,Kubernetes会与云服务提供商的负载均衡器集成,自动创建一个外部负载均衡器。该负载均衡器具有公网IP地址,能够将外部流量转发到集群中的Service。这种方式比较适合于云环境中的集群部署。 最后,...

    kubernetes灰度发布.pdf

    在Kubernetes中,多个提供相同服务的Pod通过相同的标签创建一个Service,对外暴露一个统一的入口,实现负载均衡和服务发现。 三、自动化服务升级-灰度发布 灰度发布是一种在不影响现有用户的情况下逐步推出新版本...

    云原生k8s集群中部署微服务项目前端代理服务 Nginx

    部署完成后,为了使外部流量能够访问到Nginx,我们需要创建一个Service对象。Service定义了如何访问Pod的策略,可以是ClusterIP(内部访问)、NodePort(通过节点IP访问)或LoadBalancer(云服务商提供的负载均衡器...

    解决Kubernetes用Helm安装Ingress的问题.docx

    在这个示例中,我们创建了一个名为`nginx-deployment`的Deployment,并通过Service将其暴露出来。然后,通过Ingress资源定义了一个规则,将所有指向`example.com`的请求重定向到该Service。 通过以上步骤,我们可以...

Global site tag (gtag.js) - Google Analytics