- 浏览: 565927 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (267)
- 随笔 (4)
- Spring (13)
- Java (61)
- HTTP (3)
- Windows (1)
- CI(Continuous Integration) (3)
- Dozer (1)
- Apache (11)
- DB (7)
- Architecture (41)
- Design Patterns (11)
- Test (5)
- Agile (1)
- ORM (3)
- PMP (2)
- ESB (2)
- Maven (5)
- IDE (1)
- Camel (1)
- Webservice (3)
- MySQL (6)
- CentOS (14)
- Linux (19)
- BI (3)
- RPC (2)
- Cluster (9)
- NoSQL (7)
- Oracle (25)
- Loadbalance (7)
- Web (5)
- tomcat (1)
- freemarker (1)
- 制造 (0)
最新评论
-
panamera:
如果设置了连接需要密码,Dynamic Broker-Clus ...
ActiveMQ 集群配置 -
panamera:
请问你的最后一种模式Broker-C节点是不是应该也要修改持久 ...
ActiveMQ 集群配置 -
maosheng:
longshao_feng 写道楼主使用 文件共享 模式的ma ...
ActiveMQ 集群配置 -
longshao_feng:
楼主使用 文件共享 模式的master-slave,produ ...
ActiveMQ 集群配置 -
tanglanwen:
感触很深,必定谨记!
少走弯路的十条忠告
一.设置标签
为了保证nginx之能分配到nginx服务器需要设置标签,设置标签可以让Pod选择该服务器部署
#设置标签 key为type 的 value为nginx
# kubectl label node k8s-node1 type=nginx
# kubectl label node k8s-node2 type=nginx
#查看标签
# kubectl get node --show-labels
二.创建nginx-deployment的yaml文件
nginx-deployment.yaml
### define deployment info ###
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx-deployment
namespace: default
labels:
app: nginx
### define pod info ###
spec:
# define the pod count
replicas: 2
revisionHistoryLimit: 5 #保存5个历史版本
# select the pod which is controlled
selector:
matchLabels:
app: nginx
# define the pod
template:
metadata:
# define the pod label,which must be same with selector's matchLabels
labels:
app: nginx
env: dev
tie: front
### define container info ###
spec:
containers:
# define the container name
- name: nginx
image: nginx:1.17.5
imagePullPolicy: IfNotPresent
volumeMounts:
- name: conf
mountPath: /etc/nginx
- name: opt
mountPath: /opt
#node label selector
nodeSelector:
type: nginx
volumes:
- name: conf
hostPath:
path: /etc/nginx
type: Directory
- name: opt
hostPath:
path: /opt
type: Directory
三、应用启动
# kubectl create -f nginx-deployment.yaml
# kubectl get pod -o wide
四.创建nginx-service的yaml文件
nginx-service.yaml
apiVersion: v1
# delcare it's service
kind: Service
metadata:
name: nginx-service
labels:
app: nginx
spec:
externalIPs:
- 192.168.10.80
- 192.168.10.81
- 192.168.10.82
ports:
# define the service's port
- port: 80
name: nginx-service-80
protocol: TCP
# define the container's port
targetPort: 80
# nodePort 对应 type: NodePort
# nodePort: 30080
# define the pod label which the selector match with
selector:
app: nginx
# three type : ClusterIP,NodePort,LoadBalancer
type: ClusterIP
五、应用启动
# kubectl create -f nginx-service.yaml
# kubectl get service -o wide
六、访问Nginx
http://192.168.10.81
附录:
查找.yaml 的所有文件
find / -name *.yaml
为了保证nginx之能分配到nginx服务器需要设置标签,设置标签可以让Pod选择该服务器部署
#设置标签 key为type 的 value为nginx
# kubectl label node k8s-node1 type=nginx
# kubectl label node k8s-node2 type=nginx
#查看标签
# kubectl get node --show-labels
二.创建nginx-deployment的yaml文件
nginx-deployment.yaml
### define deployment info ###
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx-deployment
namespace: default
labels:
app: nginx
### define pod info ###
spec:
# define the pod count
replicas: 2
revisionHistoryLimit: 5 #保存5个历史版本
# select the pod which is controlled
selector:
matchLabels:
app: nginx
# define the pod
template:
metadata:
# define the pod label,which must be same with selector's matchLabels
labels:
app: nginx
env: dev
tie: front
### define container info ###
spec:
containers:
# define the container name
- name: nginx
image: nginx:1.17.5
imagePullPolicy: IfNotPresent
volumeMounts:
- name: conf
mountPath: /etc/nginx
- name: opt
mountPath: /opt
#node label selector
nodeSelector:
type: nginx
volumes:
- name: conf
hostPath:
path: /etc/nginx
type: Directory
- name: opt
hostPath:
path: /opt
type: Directory
三、应用启动
# kubectl create -f nginx-deployment.yaml
# kubectl get pod -o wide
四.创建nginx-service的yaml文件
nginx-service.yaml
apiVersion: v1
# delcare it's service
kind: Service
metadata:
name: nginx-service
labels:
app: nginx
spec:
externalIPs:
- 192.168.10.80
- 192.168.10.81
- 192.168.10.82
ports:
# define the service's port
- port: 80
name: nginx-service-80
protocol: TCP
# define the container's port
targetPort: 80
# nodePort 对应 type: NodePort
# nodePort: 30080
# define the pod label which the selector match with
selector:
app: nginx
# three type : ClusterIP,NodePort,LoadBalancer
type: ClusterIP
五、应用启动
# kubectl create -f nginx-service.yaml
# kubectl get service -o wide
六、访问Nginx
http://192.168.10.81
附录:
查找.yaml 的所有文件
find / -name *.yaml
发表评论
-
HTTPS的加密原理解读
2021-12-31 11:25 280一、为什么需要加密? 因为http的内容是明文传输的,明文数据 ... -
容器技术的基石: cgroup、namespace和联合文件系统
2021-12-09 10:47 681Docker 是基于 Linux Kernel 的 Names ... -
链路追踪skywalking安装部署
2021-10-21 12:06 792APM 安装部署: 一、下载 版本目录地址:http://a ... -
自动化运维 Ansible 安装部署
2021-08-20 19:06 821一、概述 Ansible 实现了批量系统配置、批量程序部署、 ... -
Linux 下 Kafka Cluster 搭建
2021-07-08 11:23 957概述 http://kafka.apachecn.org/q ... -
ELK RPM 安装配置
2021-06-22 18:59 600相关组件: 1)filebeat。用于收集日志组件,经测试其 ... -
在Kubernetes上部署 Redis 三主三从 集群
2021-03-10 16:25 629NFS搭建见: Linux NFS搭建与配置(https:// ... -
docker-compose 部署ELK(logstash->elasticsearch->kibana)
2020-11-11 18:02 1560概述: ELK是三个开源软件的缩写,分别表示:elastic ... -
Kubernetes1.16.3下部署node-exporter+alertmanager+prometheus+grafana 监控系统
2020-10-28 10:48 1037准备工作 建议将所有的yaml文件存在如下目录: # mkd ... -
Linux NFS 搭建与配置
2020-10-21 17:58 405一、NFS 介绍 NFS 是 Network FileSys ... -
K8S 备份及升级
2020-10-20 15:48 857一、准备工作 查看集群版本: # kubectl get no ... -
API 网关 kong 的 konga 配置使用
2020-09-23 10:46 4106一、Kong 概述: kong的 ... -
云原生技术 Docker、K8S
2020-09-02 16:53 539容器的三大好处 1.资源 ... -
Kubernetes 应用编排、管理与运维
2020-08-24 16:40 563一、kubectl 运维命令 kubectl control ... -
API 网关 kong/konga 安装部署
2020-08-25 17:34 560一、概述 Kong是Mashape开 ... -
Linux 下 Redis Cluster 搭建
2020-08-13 09:14 708Redis集群演变过程: 单 ... -
Kubernetes离线安装的本地yum源构建
2020-08-08 22:41 501一、需求场景 在K8S的使用过程中有时候会遇到在一些无法上网 ... -
Kubernetes 证书延期
2020-08-01 22:28 433一、概述 kubeadm 是 kubernetes 提供的一 ... -
kubeadm方式部署安装kubernetes
2020-07-29 08:01 2336一、前提准备: 0、升级更新系统(切记升级一下,曾被坑过) ... -
Prometheus 外部监控 Kubernetes 集群
2020-07-10 15:59 1998大多情况都是将 Prometheus 通过 yaml 安装在 ...
相关推荐
在Kubernetes(k8s)环境下,部署Nginx集群是一项常见的任务,它涉及到容器编排、服务发现、负载均衡等多个重要概念。本篇将详细阐述如何使用YAML文件进行Nginx集群的配置和部署。 首先,让我们了解YAML文件在k8s中...
二进制方式部署Kubernetes高可用集群 本文将详细介绍如何使用二进制方式部署Kubernetes高可用集群,并对相关的知识点进行详细说明。 环境准备 在部署Kubernetes高可用集群之前,需要准备好环境,包括安装cfssl...
本文将详细介绍如何在Linux上搭建Nginx集群,以及如何进行详细配置,以实现负载均衡功能。 首先,我们需要理解负载均衡的基本概念。负载均衡是一种技术,通过分散网络流量到多个服务器,防止单点故障,提高服务的...
在Kubernetes(k8s)环境下部署Nginx集群是一项常见的任务,这通常涉及到使用YAML文件来定义和管理资源。YAML是Kubernetes的主要配置语言,用于描述应用的部署、服务、持久化存储等各个方面的配置。在这个过程中,...
AWS Elastic Container Service (ECS)和Elastic Kubernetes Service (EKS)是两种常见的Kubernetes部署选项。 - **AWS VPC网络模式**:提供了安全且隔离的网络环境,便于设置网络策略和访问控制。 - **EKS**:是AWS...
基于kubeadm的kubernetes高可用集群部署,包含 stacked loadbalancer;包含load balancer的高可用master架构,以keepalived和nginx-lb作为高可用集群的load balancer。需要为keepalived分配一个vip(虚拟浮动ip)...
### 二进制部署Kubernetes多Master集群 #### 一、环境准备与要求 在部署Kubernetes集群前,首先需要确保服务器满足以下条件: - **硬件配置**:建议每台服务器至少配备2核CPU、2GB内存及30GB硬盘空间。 - **网络...
在提供的部分内容中,文档详细列出了部署Kubernetes集群的步骤列表,包括初始化系统、配置全局变量、创建CA证书和秘钥、部署kubectl命令行工具、etcd集群、flannel网络以及nginx代理作为apiserver的高可用组件。...
本教程将深入探讨如何使用Docker Compose来部署一个Nginx代理服务器,该服务器将作为负载均衡器服务于多个Tomcat应用服务器,形成一个集群。这样可以提高服务的可用性和响应能力,确保在高流量情况下系统的稳定运行...
为了监控集群的健康状态和性能,部署Kubernetes Metrics Server,它可以收集和提供资源使用情况的数据。 #### 2.10 Dashboard部署 Kubernetes Dashboard是Web UI,方便用户可视化地管理和监控集群。部署Dashboard...
ingress-nginx-4.0.17是专为Helm部署在Kubernetes(k8s)集群中的ingress-nginx控制器设计的图表资源。这个版本提供了稳定性和性能优化,使得对Kubernetes服务的外部访问变得更为便捷和可靠。本文将深入探讨ingress...
三、Nginx on Kubernetes部署 13 3.1 Nginx部署与验证 13 Kubernetes(简称K8s)具有完备的集群管理能力,它是当前被业界广泛认可和看好的Docker分布式系统解决方案,能够实现自动化资源管理、无缝动态扩容以及跨多...
在Kubernetes环境中,多Master节点集群的部署是一个关键任务,特别是在需要高可用性和容错性的场景下。本文将详细介绍如何通过二进制方式部署一个多Master节点的Kubernetes集群,适合初学者逐步学习。 首先,我们要...
在本文中,我们将详细介绍 Kubernetes 二进制部署的过程,包括角色 IP 组件、Master 节点、Node 节点、etcd 集群、Nginx 和 keepalived 的配置等。 角色 IP 组件 在 Kubernetes 集群中,Master 节点和 Node 节点都...
但需要注意的是,我们不会在仅影响上游配置的更改(即部署应用程序时端点更改)时重新加载 Nginx。 我们使用 lua-nginx-module 来实现这一点。 查看下面以了解有关它是如何完成的更多信息。 通常,Kubernetes 控制...
4. **部署NGINX**:学习如何编写Kubernetes的YAML文件,定义一个运行NGINX的Deployment,这包括Pod规格、镜像、副本数量等。 5. **服务暴露**:了解如何创建一个Kubernetes Service来暴露NGINX,可能包括ClusterIP...
用Kubernetes部署Metrics Server 安装Helm包管理工具 配置Helm,在 Kubernetes集群中创建运行Helm 的 tiller,并初始化Helm 用Helm安装Nginx Ingress Controller,同时启用RBAC和发布Ingress Controller的Service 用...
Kubernetes 应用示例包括部署 Nginx 服务、使用卷挂载、弹性伸缩和滚动升级版本等。Kubernetes 提供了多种应用示例和解决方案,帮助用户快速上手和部署应用程序。 Kubernetes 集群操作 Kubernetes 集群操作包括...