在看尚硅谷的k8s视频中,学到ingress代理的时候,由于之前按照视频安装了V1.15.1,后面环境又出了问题,重新安装了

16.1的,为这次失败埋下了伏笔。

教案中的yaml

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx-dm
spec:
replicas: 2
template:
metadata:
labels:
name: nginx
spec:
containers:
- name: nginx
image: wangyanglinux/myapp:v1
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: nginx-svc
spec:
ports:
- port: 80
targetPort: 80
protocol: TCP
selector:
name: nginx
后面会贴出我修改的
创建后发现pod是没有问题的,但svc创建成功,却不能访问
[root@k8s-master mnt]# kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 4d23h
nginx-svc ClusterIP 10.102.185.217 <none> 80/TCP 14m
[root@k8s-master mnt]# curl 10.102.185.217
curl: (7) Failed connect to 10.102.185.217:80; 拒绝连接
[root@k8s-master mnt]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx-64ddb75745-28lfx 1/1 Running 0 52s
nginx-64ddb75745-mmmxx 1/1 Running 0 52s
[root@k8s-master mnt]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
nginx-64ddb75745-28lfx 1/1 Running 0 58s 10.244.1.29 k8s-node02 <none> <none>
nginx-64ddb75745-mmmxx 1/1 Running 0 58s 10.244.2.32 k8s-node01 <none> <none>
[root@k8s-master mnt]# curl 10.244.1.29
Hello MyApp | Version: v1 | <a href="hostname.html">Pod Name</a>
[root@k8s-master mnt]# curl 10.244.2.32
Hello MyApp | Version: v1 | <a href="hostname.html">Pod Name</a>
[root@k8s-master mnt]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 172.17.0.1:31615 rr
-> 10.244.2.31:80 Masq 1 0 0
TCP 172.17.0.1:32044 rr
-> 10.244.2.31:443 Masq 1 0 0
TCP 192.168.122.1:31615 rr
-> 10.244.2.31:80 Masq 1 0 0
TCP 192.168.122.1:32044 rr
-> 10.244.2.31:443 Masq 1 0 0
TCP 192.168.180.130:31615 rr
-> 10.244.2.31:80 Masq 1 0 0
TCP 192.168.180.130:32044 rr
-> 10.244.2.31:443 Masq 1 0 0
TCP 10.96.0.1:443 rr
-> 192.168.180.130:6443 Masq 1 3 0
TCP 10.96.0.10:53 rr
-> 10.244.0.8:53 Masq 1 0 0
-> 10.244.0.9:53 Masq 1 0 0
TCP 10.96.0.10:9153 rr
-> 10.244.0.8:9153 Masq 1 0 0
-> 10.244.0.9:9153 Masq 1 0 0
TCP 10.100.186.209:80 rr
-> 10.244.2.31:80 Masq 1 0 0
TCP 10.100.186.209:443 rr
-> 10.244.2.31:443 Masq 1 0 0
TCP 10.102.185.217:80 rr
TCP 10.244.0.0:31615 rr
-> 10.244.2.31:80 Masq 1 0 0
TCP 10.244.0.0:32044 rr
-> 10.244.2.31:443 Masq 1 0 0
TCP 10.244.0.1:31615 rr
-> 10.244.2.31:80 Masq 1 0 0
TCP 10.244.0.1:32044 rr
-> 10.244.2.31:443 Masq 1 0 0
TCP 127.0.0.1:31615 rr
-> 10.244.2.31:80 Masq 1 0 0
TCP 127.0.0.1:32044 rr
-> 10.244.2.31:443 Masq 1 0 0
UDP 10.96.0.10:53 rr
-> 10.244.0.8:53 Masq 1 0 0
-> 10.244.0.9:53 Masq 1 0 0
10.102.185.217:80 rr,并没有指向一个3xxxx端口
最后才发现是service里面的标签有问题,应该是版本的问题,因为视频中15.1就没有问题。
[root@k8s-master mnt]# cat ingress-http.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: wangyanglinux/myapp:v1
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
[root@k8s-master mnt]#
[root@k8s-master mnt]# cat ingress-svc.yaml
apiVersion: v1
kind: Service
metadata:
name: nginx-svc
namespace: default
spec:
type: NodePort
ports:
- port: 80
targetPort: 80
protocol: TCP
selector:
app: nginx [root@k8s-master mnt]#
[root@k8s-master mnt]# vim ingress-svc.yaml
[root@k8s-master mnt]# kubectl create -f ingress-svc.yaml
service/nginx-svc created
[root@k8s-master mnt]# kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 4d23h
nginx-svc NodePort 10.111.72.240 <none> 80:31041/TCP 4s
[root@k8s-master mnt]# curl 10.111.72.240
Hello MyApp | Version: v1 | <a href="hostname.html">Pod Name</a>

所以在学习k8s的过程中,最好注意一下所用的版本

记一次创建svc代理失败的更多相关文章

  1. win7 装了VB虚拟机 开始挺好用 后来突然就打不开了 提示如下错误:(如图)创建 COM 对象失败.

    创建 COM 对象失败. 应用程序将被中断. Start tag expected, '<' not found. Location: 'C:\Users\Mike/.VirtualBox\Vi ...

  2. 烂泥:【解决】virtualbox启动报创建COM对象失败错误

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 今天在启动virtualbox时,发现virtualbox报创建COM对象失败错误,如下图: 查找相关资料发现很有可能是virtualbox与OS不兼容 ...

  3. php 通过exec 创建git分支失败

    今天给我们自己的发布系统增加一个新建分支的功能,操作比较简单,但是使用php执行shell命令的时候总是无法push分支到远程,但是登陆服务器执行却是可以的 新建分支命令如下 git fetch -- ...

  4. eclipse创建android项目失败的问题 [ android support library ]

    有根筋搭错了,想起来android应用开发???? 放下两年的手机应用开发,昨天有更新了android SDK, 重新搭建开发环境. 这两年android 变化真TM的大............... ...

  5. IDEA 创建maven-web project失败一例

    今天使用IDEA创建WEB-APP总是失败,经排查原来是MAVEN环境没配置好!!! 配置: M2_HOME--->maven解压目录 path---->%M2_HOME%\bin\

  6. Django同步创建models table失败

    django1.8通过manage.py syncdb 执行同步创建models中创建的表格失败 由于syncdb命令在1.9版本中会被remove, 需要改用makemigrations命令进行代替 ...

  7. Vbox创建COM对象失败

    近期在使用vbox时出现下面错误:创建COM对象失败,应用程序将被中断 在CMD里面输入下面命令: C:\Users\Administrator>d: D:\>cd D:\Program ...

  8. Spring BPP中优雅的创建动态代理Bean

    一.前言 本文章所讲并没有基于Aspectj,而是直接通过Cglib以及ProxyFactoryBean去创建代理Bean.通过下面的例子,可以看出Cglib方式创建的代理Bean和ProxyFact ...

  9. mysql创建外链失败1005错误解决方法

    mysql创建外链失败1005错误解决方法 错误号:1005错误信息:Can't create table 'webDB.#sql-397_61df' (errno: 150)解决方法 错误原因有四: ...

随机推荐

  1. Linux学习笔记(14)linux在6.x和7.x系列的安装与基本使用区别

    关键词,centos7 centos6.x安装与使用:https://www.cnblogs.com/gered/p/9440551.html centos7.x安装与使用(本文)转自:https:/ ...

  2. Windows Forms和WPF在Net Core 3.0框架下并不会支持跨平台

    Windows Forms和WPF在Net Core 3.0框架下并不会支持跨平台 微软将WinForms和WPF带到.NET Core 3.0这一事实,相信大家都有所了解,这是否意味着它在Linux ...

  3. 浅谈Javascript数据属性与访问器属性

    ES5中对象的属性可以分为‘数据属性’和‘访问器属性’两种. 数据属性一般用于存储数据数值,访问器属性对应的是set/get操作,不能直接存储数据值. 数据属性特性:value.writable.en ...

  4. Python 之父 63 岁才退休,我 23 就中年危机。。

    Java技术栈 www.javastack.cn 优秀的Java技术公众号 Python 之父 Guido van Rossum 在推特公布了自己从 Dropbox 公司离职的消息,并表示已经退休. ...

  5. WAMP中的mysql设置密码

    为WAMP中的mysql设置密码密码 WAMP安装好后,mysql密码是为空的,那么要如何修改呢?其实很简单,通过几条指令就行了,下面我就一步步来操作. 1.首先,通过WAMP打开mysql控制台. ...

  6. 图片服务器期,利用一下园子练习一下markdown

    图片储存

  7. ubuntu中安装Python3.7

    一. 源码安装: 1. 官网源码下载: Python官网:https://www.python.org/downloads/ setuptools官网:https://pypi.org/project ...

  8. 微信小程序与内嵌webview之间来回跳转的几点总结,以及二维码的使用

    截止到发稿小程序支持的功能,后续如果小程序更新在完善文稿. 1. 小程序可以内嵌组件跳转到h5页面,前提是在小程序后台配置相应的业务域名.新打开的h5页面会替代小程序组件内的其它组件,即为h5不能与小 ...

  9. ES6 环境的搭建

    安装babel npm install --g babel-cli 在项目目录下输入 npm init -y 会自动创建package.json文件 babel src/index.js -o dis ...

  10. 关于KMeans和range的使用

    #!/usr/bin/python#-*-coding:utf-8-*-import numpy as npfrom sklearn.cluster import KMeansfrom scipy.s ...