当前位置: 首页 > wzjs >正文

网站风格介绍适合女生去的培训机构

网站风格介绍,适合女生去的培训机构,综合门户型网站有哪些,做外贸要建什么网站上几篇讲了部署master和worker node 及网络插件calico, 现在开始实际运行一个容器。 1. 新建nginx.yaml文件 方式1:直接创建一个pod 和一个 service,一般不直接这样创建,该方式仅适用于测试或学习 apiVersion: v1 kind: Pod …

上几篇讲了部署master和worker node 及网络插件calico, 现在开始实际运行一个容器。

1. 新建nginx.yaml文件

方式1:直接创建一个pod 和一个 service,一般不直接这样创建,该方式仅适用于测试或学习

apiVersion: v1
kind: Pod                 # 资源对象类型 为pod
metadata:name: nginxnamespace: dev      # 指定命令空间, 不然默认 default 命令空间labels:             # 标签app: nginx
spec:                 # 属性containers:         # 容器- name: nginximage: nginx:1.27.4      # 镜像源 imagePullPolicy: IfNotPresent  # 如果本地已有镜像,则不再拉取ports:- containerPort: 80  # 容器暴露的端口
---
apiVersion: v1
kind: Service                 # 资源类型为service
metadata:                     # 元数据name: nginx-servicenamespace: dev               # 命令空间,默认default,不建议使用默认
spec:type: NodePort             # 类型,ClusterIP,NodePort, LoadBalancerselector:                  # 选择器,选择哪个标签labelsapp: nginxports:                     # 端口- name: httpprotocol: TCP          # 协议类型 TCP,UDP,STCPport: 80               # Service 的端口(集群内访问)targetPort: 80         # 容器的端口(与 Pod 的 containerPort 一致)nodePort: 30002        # 节点的访问端口(范围 30000-32767

方式2: 使用 deployment 部署一个nginx service (推荐)

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deploymentnamespace: dev
spec:replicas: 1     # 副本数selector:       # 选择器matchLabels:app: nginxtemplate:        # 模版metadata:      # 元数据labels:app: nginxspec:            # 属性containers:- name: nginx-containerimage: nginx:1.27.4     # 镜像源imagePullPolicy: IfNotPresentports:- containerPort: 80---apiVersion: v1
kind: Service
metadata:name: nginx-servicenamespace: dev
spec:selector:app: nginxports:- protocol: TCPport: 80targetPort: 80nodePort: 30002type: NodePort

2. 新建命令空间

如果不新建命令空间,将使用默认的命令空间default,这样不符合规范,容器一多也不方便管理

kubectl create namespace <name-space>  
如: kubectl create namespace dev  # 创建命名空间dev

上文使用的命令空间是dev

kubectl get ns #查看所有的命名空间
NAME              STATUS   AGE
default           Active   8d
dev               Active   12h
kube-node-lease   Active   8d
kube-public       Active   8d
kube-system       Active   8d
test              Active   11h

3. 在 worker node 拉取镜像到本地

nginx 官方镜像地址国内无法访问,如果本地没有就会从官方地址拉取,没有配置代理则会拉取失败。所以先下载到本地。

下载地址可以参数上篇calico的地址:

ctr -n k8s.io images pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nginx:1.27.4-linuxarm64ctr -n k8s.io images tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nginx:1.27.4-linuxarm64 docker.io/library/ngigx:1.27.4

4. 创建pod 和service

本文最后使用方式2创建,使用方式1时是测试镜像拉取出现的问题,后文会有记录。

kubectl create -f nginx.yaml    # 首次创建
或
kubectl apply -f nginx.yaml    # 更新

创建成功master节点查看:

[root@k8s-master test]# kubectl get pods -n dev
NAME                               READY   STATUS    RESTARTS   AGE
nginx-deployment-f57fb66d4-tqmcj   1/1     Running   0          6h47m[root@k8s-master test]# kubectl get service -n dev
NAME            TYPE       CLUSTER-IP        EXTERNAL-IP   PORT(S)        AGE
nginx-service   NodePort   192.168.127.107   <none>        80:30002/TCP   6h48m

5. 访问

masternode 节点输入localhost:30002
在这里插入图片描述
集群外的机器输入IP:30002 也能访问,这里就不截图了。

6. 踩坑

6.1 镜像地址

  1. imagePullPolicy 一定要配,不然就会从官方拉取,这里开始一直纳闷为啥本地拉取了镜像在创建pod时,状态一直是ImagePullBackOff
  2. yaml 文件中是image:nginx:xxx, 本地拉取镜像给镜像打tag必须是docker.io/library/nginx:xxx, 因为在拉取镜像时会在镜像名前默认添加docker.io/library/ 的前缀,这点很坑。

使用方式1, 因为不了解 6.1, 所以在修改镜像地址时,写的 image: dev/nginx:1.27.4,而tag 还是 docker.io/library/nginx:xxx, 导致拉取镜像失败。

查看pod 的详细信息报:

Normal   Scheduled  36s               default-scheduler  Successfully assigned dev/nginx to k8s-node1Normal   Pulled     5s (x5 over 35s)  kubelet            Container image "nginx:1.27.4" already present on machineWarning  Failed     5s (x5 over 35s)  kubelet            Error: failed to get image from containerd "sha256:9b1b7be1ffa607d40d545607d3fdf441f08553468adec5588fb58499ad77fe58": image "docker.io/dev/nginx:1.27.4": not found

6.2 nodeport 不存在

因为节点的访问端口设置的30002, 所以在查看podservice没问题后,在节点netstat -nlp | grep 30002 ,哦豁,超出认知范围,竟然找不到端口。
不知道为啥,然后在浏览器瞎试了一把,发现步骤5竟然没问题。
然后去找了一下资料,是被iptables 转发了。

检查 iptables 规则(查找 30002 端口相关规则)
iptables -t nat -L KUBE-NODEPORTS -n --line-numbers | grep 30002  
# 存在类似 KUBE-SVC-XXX tcp dpt:30002 的规则,说明流量通过 iptables 转发
http://www.dtcms.com/wzjs/185392.html

相关文章:

  • 只有一个人网站开发商品标题seo是什么意思
  • 企业网站 appseo做的好的网站
  • 设计感网站买号链接
  • 重庆工厂网站建设适合口碑营销的产品
  • 网站建设解决方网站seo排名
  • 雅虎做网站推广英文网站设计公司
  • 湘潭做网站选择磐石网络网址大全导航
  • 2016年网站建设方案ppt重庆seo关键词优化服务
  • app开发和网站开发长春seo外包
  • 找人做网站需要问哪些问题信息流推广的竞价机制是
  • 南桥网站建设站长网站
  • 做电影网站需多大的空间网络推广具体内容
  • 酒泉百度做网站多少钱网店运营基础知识
  • 个人免费发布信息平台北京网站优化托管
  • 通过付费网站做lead北京中文seo
  • 快件网站建设互联网广告投放
  • 做网站购买模板上海正规seo公司
  • 外贸网站制作广州每天三分钟新闻天下事
  • 学校的网站的代码模板下载西安seo顾问培训
  • 远丰做网站怎么样竞价系统
  • 做网站公司 陕西渭南舆情分析系统
  • 网站做附近地图导航seo搜索引擎优化怎么优化
  • 福永医院网站建设厦门人才网唯一官网招聘
  • 蚌埠网站设计重庆排名seo公司
  • 周口专业做网站公司安卓优化大师2021
  • 多种成都网站建设seo职位具体做什么
  • 网站搭建免费视频教程速推网
  • 周口做网站建设优秀企业网站欣赏
  • 郑州外贸网站建设公司排名上海seo网站优化
  • 云南建设注册考试中心网站appaso优化技巧