`
JerryWang_SAP
  • 浏览: 1025649 次
  • 性别: 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
分享到:
评论

相关推荐

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

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

    ingress-nginx-service-nodeport.rar

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

    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资源来指定哪些...

    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。 通过以上步骤,我们可以...

    k8s 新版本 部署 Ingress-nginx controller.doc

    为了部署 Ingress-nginx controller,需要创建一个 deploy.yaml 文件。deploy.yaml 文件中需要指定 Ingress-nginx controller 的镜像,例如 k8s.gcr.io/ingress-nginx/controller:v1.1.2 和 k8s.gcr.io/ingress-...

Global site tag (gtag.js) - Google Analytics