K8S--安装Nginx

原文网址:K8S--安装Nginx-CSDN博客

简介

本文介绍K8S安装Nginx的方法。

1.创建Nginx目录及配置文件

mkdir -p /work/devops/k8s/app/nginx/{config,html}

在config目录下创建nginx.conf配置文件,内容如下:

# events必须要有
events {worker_connections  1024;
}http {include       /etc/nginx/mime.types;default_type  application/octet-stream;#日志格式log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" $http_x_forwarded_for';#日志的路径access_log  /var/log/nginx/access.log  main;sendfile  on;keepalive_timeout  65;include /etc/nginx/conf.d/*.conf;server{# 监听的端口listen 80;server_name _;root /usr/share/nginx/html/;index index.html;}
}

在html目录下创建index.html,内容如下:

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>K8S搭建nginx</title>
</head>
<body><h1>Hello World!</h1>
</body>
</html>

2.编写K8S配置文件

此配置文件用于创建Namespace、Deployment、Service。

  • Namespace:命名空间,用于区分应用。
  • Deployment:用于生成pod。
  • Service:用于将pod暴露到集群中,供其他pod或者外部访问。

到/work/devops/k8s/app/nginx/路径下,创建名为k8s.yaml的配置文件

# 创建命名空间,Deployment和Service中要引用。
apiVersion: v1
kind: Namespace
metadata:name: middlelabels:name: middle
---
# 创建Deployment
apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deploymentnamespace: middlelabels:app: nginx
spec:# 副本的数量replicas: 1selector:# 选择app=nginx的PodmatchLabels:app: nginx# 选择或创建的Pod的模板template:metadata:labels:app: nginxspec:# 容器的路径containers:- image: nginx:latestname: nginx-latestports:- containerPort: 80name: nginx-80# 容器内的路径volumeMounts:- name: configmountPath: /etc/nginx/nginx.conf- name: config-includemountPath: /etc/nginx/conf.d/- name: logmountPath: /var/log/nginx/- name: htmlmountPath: /usr/share/nginx/html/- name: certmountPath: /etc/nginx/cert/# 主机的路径volumes:- name: config #和volumeMounts中的内容要对应hostPath:path: /work/devops/k8s/app/nginx/config/nginx.conftype: File- name: config-include #和volumeMounts中的内容要对应hostPath:path: /work/devops/k8s/app/nginx/config/conf.d/type: DirectoryOrCreate- name: log #和volumeMounts中的内容要对应hostPath:path: /work/devops/k8s/app/nginx/logs/type: DirectoryOrCreate- name: html #和volumeMounts中的内容要对应hostPath:path: /work/devops/k8s/app/nginx/html/type: DirectoryOrCreate- name: cert #和volumeMounts中的内容要对应hostPath:path: /work/devops/k8s/app/nginx/cert/type: DirectoryOrCreate
---
# 创建Service
apiVersion: v1
kind: Service
metadata:name: nginx-servicenamespace: middlelabels:app: nginx
spec:ports:- name: nginx-portport: 8000   # Service监听的端口targetPort: 80  # nginx自身暴露的端口。对应Deployment的containerPort# 对外的端口号nodePort: 30003selector:app: nginx# NodePort类型可以对外暴露端口type: NodePort

3.启动Nginx

到/work/devops/k8s/app/nginx/路径下,执行此命令:

kubectl apply -f k8s.yaml

结果:

4.查看启动结果

法1:通过dashboard查看

法2:通过命令查看

kubectl get pods -A

结果: 

kubectl get services -A

结果 

4.访问Nginx

测试1:外部访问NodePort

访问:ip:nodePort端口号

测试2:访问集群

curl 10.100.95.158:8000

结果:

测试3:访问容器内部

先进入容器内部,再访问容器端口。

1.找到pod的名字

kubectl get pods -A

结果:

2.进入容器内部 

kubectl exec nginx-deployment-557c7b98b6-8l5r5 -n middle -it -- bash

结果:

 

3.访问Nginx

curl localhost:80

结果

备注:可以通过Ctrl+D退出。 

5.删除Nginx

到/work/devops/k8s/app/nginx/路径下,执行此命令:

kubectl delete -f k8s.yaml

结果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/641809.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PALWORLD linux centos7开服教程

开放端口8211 iptables -A INPUT -p udp -p tcp --dport 8211 -j ACCEPT iptables -A INPUT -p udp -p udp --dport 8211 -j ACCEPT yum -y install glibc.i686 libstdc.i686 screen libcurl.i686 yum install glibc-devel.i686 yum install libstdc-devel.i686 yum -y ins…

逆序对数量(归并排序做法)

先给出上一篇文章归并排序模板-CSDN博客里的归并排序模板&#xff1a; #include<iostream> using namespace std;const int N 100010;int n; int q[N], temp[N];void merge_sort(int q[], int l, int r) {if(l > r) return;int mid (lr) >> 1;merge_sort(q, …

爬虫安居客新房

一、首先看网址 后面有全部代码 https://hf.fang.anjuke.com/loupan/baohequ/p3 这种形式很好分析&#xff0c;https://hf.fang.anjuke.com/loupan/行政区域页码 xinfang_area ["feixixian", "baohequ", "shushanqu", "luyangqu",…

#GPU|LLM|AIGC#集成显卡与独立显卡|显卡在深度学习中的选择与LLM GPU推荐

区别 核心区别&#xff1a;显存&#xff0c;也被称作帧缓存。独立显卡拥有独立显存&#xff0c;而集成显卡通常是没有的&#xff0c;需要占用部分主内存来达到缓存的目的 集成显卡&#xff1a; 是集成在主板上的&#xff0c;与主处理器共享系统内存。 一般会在很多轻便薄型的…

机械臂雅可比矩阵的矢量积理解和matlab实现

雅可比矩阵的第Ji列&#xff1a; 关于一些基本概念可以参考博客&#xff0c;部分细节如下&#xff1a; 每个移动关节&#xff0c;Ji可以这样计算&#xff1a; 每个旋转关节&#xff0c;Ji这样计算&#xff1a; 有时候要求按照末端执行器坐标系{n}来执行一些位移旋转之类的…

uniapp中vue2项目导入高德地图

1、看官网新手入门链接导入原生高德地图&#xff1a; JS API 结合 Vue 使用-基础-进阶教程-地图 JS API 2.0|高德地图API (amap.com) 具体步骤&#xff1a; 第一步&#xff0c;安装插件 npm i amap/amap-jsapi-loader --save 第二步&#xff0c;在vue组件中写代码显示地图…

[数据结构]顺序表

1、顺序表的概念及结构 1.1 线性表 线性表&#xff08; linear list &#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是⼀种在实际中广泛使用的数据结构&#xff0c;常见的线性表&#xff1a;顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构&#…

品牌价值的累积与倍增:指数函数的含义及其在企业运营中的应用

品牌的价值日益凸显。品牌价值的累积与倍增不仅是企业追求的目标&#xff0c;也是市场竞争的重要标志。指数函数作为一种数学模型&#xff0c;对于描述品牌价值的增长具有重要意义。本文将深入探讨指数函数的含义及其在企业运营中的应用&#xff0c;并分析如何通过持续创新、品…

【DevOps】Jenkins Extended E-mail 邮件模板添加自定义变量

文章目录 1、配置Jenkins邮箱2、配置告警模板1、配置Jenkins邮箱 略 2、配置告警模板 自定义变量:DYSK_PYTEST_STATUS // Uses Declarative syntax to run commands inside a container. pipeline {agent {kubernetes {cloud "kubernetes" //选择名字是kuberne…

绘制PCB封装库的神器

我们平时绘制PCB封装时&#xff0c;一般都是按照元器件数据表上的封装图来绘制&#xff0c;有一些ECAD软件提供了向导&#xff0c;但是这个过程还是比较繁琐。现在有很多大厂比如TI都会提供芯片封装库&#xff0c;一般需要Ultra Librarian软件才能打开&#xff0c;然后再转换成…

【ZYNQ入门】第十篇、基于FPGA的图像白平衡算法实现

目录 第一部分、关于白平衡的知识 1、MATLAB 自动白平衡算法的实现 1.1、matlab代码 1.2、测试效果 1.3 测试源图 2、为什么摄像头采集的图像要做白平衡 3、自动白平衡算法总结 4、FPGA设计思路 4.1、实时白平衡的实现 4.2、计算流程优化思路 第二部分、硬件实…

如何查看Linux CPU占有率

目录 1、top 2、htop 3、vmstat 4、mpstat 5、iostat 查看嵌入式设备CPU占有率是评估系统资源使用情况的重要方式。 在Linux系统中&#xff0c;有多种方法可以查看CPU占有率&#xff0c;这里介绍几种常用的命令行工具。 1、top 这是最常用的命令之一&#xff0c;它提供了…

C语言之反汇编查看函数栈帧的创建与销毁

文章目录 一、 什么是函数栈帧&#xff1f;二、 理解函数栈帧能解决什么问题呢&#xff1f;三、 函数栈帧的创建和销毁解析3.1、什么是栈&#xff1f;3.2、认识相关寄存器和汇编指令3.2.1 相关寄存器3.2.2 相关汇编命令 3.3、 解析函数栈帧的创建和销毁3.3.1 预备知识3.3.2 代码…

AI对比:ChatGPT和文心一言的区别和差异

目录 一、ChatGPT和文心一言大模型的对比分析 1.1 二者训练的数据情况分析 1.2 训练大模型数据规模和参数对比 1.3 二者3.5版本大模型对比总结 二、ChatGPT和文心一言功能对比分析 2.1 二者产品提供的功能情况分析 2.2 测试一下各种功能的特性 2.2.1 文本创作能力 2.2…

婴儿洗衣机怎么选?热门品牌希亦、觉飞、由利详细测评

宝宝的衣物是不是要和大人的衣服分开洗呢&#xff1f;这是很多新手爸妈都会遇到的一个问题。有的人认为&#xff0c;宝宝的衣服要单独洗&#xff0c;以免被大人的衣服上的细菌污染&#xff1b;有的人认为&#xff0c;宝宝的衣服可以和大人的衣服一起洗&#xff0c;这样可以节省…

优先级队列(堆)

目录 1 概念 2 堆的概念 2.1小根堆 2.2大根堆 3堆的存储方式​​​​​​​ 4、堆的创建 4.1堆向下调整 5、时间复杂度 6、堆的插入&#xff08;向上调整&#xff09; 7、堆的删除 8、PriorityQueue的特性 9、堆排序 1 概念 我们知道的队列&#xff0c;队列是一…

leetcode---Z字形变换

题目&#xff1a; 将一个给定字符串 s 根据给定的行数 numRows &#xff0c;以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 "PAYPALISHIRING" 行数为 3 时&#xff0c;排列如下&#xff1a;之后&#xff0c;你的输出需要从左往右逐行读取&#xff0c;产生…

redis高可用之主从部署

文章目录 前言1. 同步以及命令传播1.1 同步1.2 命令传播 2. 解决从服务器断线重连2.1 解决方案 3. PSYNC命令4. 复制步骤1:设置主服务器的地址和端口步骤2:建立套接字连接 ——其实就是建立TCP连接步骤3:发送PING命令步骤4:身份验证步骤5:发送端口信息步骤6:同步步骤7:命令传播…

鸿蒙5.0发布时间已定!何处寻得移动开发加速器?

直接在百度上搜索「鸿蒙5.0发布时间」&#xff0c;出来的结果&#xff0c;那一个比一个焦虑~~ 百度的AI基于综合内容判断得出&#xff0c;鸿蒙5.0的发布时间在2023-04-17 百度知道推的答案是202年年4月中 但不管几月&#xff0c;“鸿蒙元年”似乎都是确定的&#xff0c;就是…

Linux切换jdk版本

参考文献&#xff1a;Linux 多个JDK的版本 脚本切换 - C小海 - 博客园 (cnblogs.com)