添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
  1. 创建测试项目
$ oc new-project limited-bandwidth
$ oc adm policy add-scc-to-user anyuid -z default
  1. 创建内容如下的nginx.yaml文件,其中对Pod的进出访问都限制了0.5Mb/s网络带宽。
apiVersion: apps.openshift.io/v1
kind: DeploymentConfig
metadata:
  labels:
    app: nginx
  name: nginx
spec:
  replicas: 1
  selector:
    deploymentconfig: nginx
  template:
    metadata:
      annotations:
        kubernetes.io/egress-bandwidth: 0.5M
        kubernetes.io/ingress-bandwidth: 0.5M
      labels:
        app: nginx
        deploymentconfig: nginx
    spec:
      containers:
        - image: nginx
          name: nginx
$ oc create -f nginx.yaml -n limited-bandwidth
deploymentconfig.apps.openshift.io/nginx created
  1. 查看Pod名称
$ oc get pod -n limited-bandwidth
NAME             READY   STATUS      RESTARTS   AGE
nginx-1-deploy   0/1     Completed   0          12m
nginx-1-rcn7j    1/1     Running     0          11m
  1. 进入Pod,然后下载一个文件。如果网络不是瓶颈的话,下载速度会稳定在60KB/s左右。
$ oc rsh $(oc get pod -n limited-bandwidth | grep Running | awk '{print $1}')
# curl -LO https://mirror.openshift.com/pub/openshift-v4/clients/ocp/latest/openshift-install-linux.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0 80.0M    0  400k    0     0  31848      0  0:43:54  0:00:12  0:43:42 59953

Route访问限流

OpenShift 使用了基于HAProxy的route实现对容器的Ingress访问,可以设置route的HAProxy相关参数来实现Ingress访问限流。通过设置route的annotion设置HAProxy相关参数。

  1. 部署OpenShift中的cakephp示例。
  2. 执行以下命令修改自动生成的route,在annotations区域增加2个HAProxy的参数,设置客户端每秒只能访问1次route。
$ oc annotate route myroute --overwrite haproxy.router.openshift.io/rate-limit-connections=true
$ oc annotate route myroute --overwrite haproxy.router.openshift.io/rate-limit-connections.rate-http=1
  1. 连续执行命令以下访问route,确认不能快速访问cakephp的route。
$ curl -I <CAKEPHP_ROUTE>
HTTP/1.1 200 OK
Date: Sun, 16 May 2021 12:57:49 GMT
Server: Apache/2.4.37 (Red Hat Enterprise Linux) OpenSSL/1.1.1g
Content-Type: text/html; charset=UTF-8
Set-Cookie: 7be6a95f3528654dde226a230425d7e3=4288f93c042b36d415cb16a42dc930a9; path=/; HttpOnly
Cache-control: private
$ curl -I <CAKEPHP_ROUTE>
curl: (52) Empty reply from server
                    创建项目oc new-project limited-bandwidthoc adm policy add-scc-to-user anyuid -z default创建DeploymentConfig,其中对Pod的进出访问都限制了0.5M网络带宽。apiVersion: apps.openshift.io/v1kind: DeploymentConfigmetadata:  labels:    app: nginx  name: nginx  namespace: lim.
 该存储库包含一组手册,以帮助促进OpenShift 4.6在VMware上的部署。
OpenShift 4.6的更改
请注意,如果未对append bootstrap配置进行一些修改,则此安装程序将无法与OpenShift的早期版本一起使用。 之所以需要进行此更改,是因为OpenShift 4.6现在使用点火规范v3(OpenShift的早期版本使用v2)。 有关更改的更多详细信息,请参见。
这是在RHV上自动化OpenShift 4部署的的延续。 目标是自动化辅助节点(用于点火伪像的Web服务器,外部LB和DHCP)的配置,并在VMware上自动部署Red Hat CoreOS(RHCOS)节点。
特定自动化
在IdM中创建所有SRV,A和PTR记录
部署httpd服务器以承载安装工件
HAProxy的部署和适用的配置
部署dhcpd和适用的固定主机条目(静态分配)
 上载RHCOS OVA模板
在VMware上部署和配置RHCOS VM
 有序启动虚拟机
要利用本指南中的自动化功能,您需要带以下内容:
 VMware
用admin1创建project1项目,因此admin1具有project1项目的管理员权限。
admin1可以将project1项目的管理员权限授权给admin2,此时admin2拥有admin1相同权限。
admin2可以将project1项目的管理员权限从admin1收回。
admin2可以将project1...
				
很多OpenShift的用户都非常喜欢其自带的Route功能,Route为外部用户提供了访问Pod的负载均衡功能,它要比Kubernetes缺省提供的Ingress功能强大很多。有关介绍可参见《OpenShift 4之Route与Ingress》。 OpenShift的Route是通过Pod运行的,因此如果不指定运行环境,Route的Pod可能会运行在Worker甚至Masrer类型的节点上。 我们在开始之前先确保环境和完成《OpenShift 4 之Istio-Tutorial (2) 部署三个微服务》一样,只部署了3个微服务和VirtualService、Gateway,没有DestinationRule。 此时使用脚本访问customer可以正常连续访问。 说明:本文已经在OpenShift 4.89环境中验证 OpenShift 内置路由功能以实现 Kubernetes 的 Ingress。针对路由可以设置访问白名单,以拦截来自不明网络的非法请求。 在 OpenShift 上根据下图部署 https://github.com/liuxiaoyu-git/php-helloworld 应用。 通过部署好的应用 Route 访问,确认应用显示下图。其中下图的 “ 209.132.188.14” 是访
openshift route 504 request timeout 今天给一个业务应用添加了route,这个应用的一个请求处理耗时比较长,在使用route访问的时候返回timeout 504,查了openshift 文档,有超时时间的相关配置: # oc annotate route &amp;lt;route_name&amp;gt; \ --overwrite haproxy.router.ope...
理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4):用户及权限管理 理解OpenShift(5):从 Docker Volume 到 OpenShift Persistent Volume ** 本文基于 OpenShift 3.11...
本文操作要改变Fontend微服务的量分发策略,以达到控制分发到Backend_v1和Backend_v2访问量的目的。 访问量分发可以通过以下两种方式进行设置: 文章目录使用Kiali控制台设置量分发使用YAML和命令设置量分发 使用Kiali控制台设置量分发 在Kiali控制台进入Services->backend,点击Action,在下拉菜单中选择Create Weig...
使用OpenShift的oc命令可以将Service内部访问转为(oc的expose子命令)可从外部访问的Route,这种转换缺省是使用http协议访问应用的。如果要支持https协议,除了需要生成证书外,还需要用“oc create route”来创建Route对象。 首先部署一个测试应用 $ oc new-project https $ oc new-app openshift/hello...
理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4):用户及权限管理 理解OpenShift(5):从 Docker Volume 到 OpenShift Persistent Volume 理解OpenShift(6):集中式日志处理...
我目前再RedHat工作,负责OpenShift 的测试工作,分享下OpenShiftRouter是怎么工作的   首先说下k8s的service,大家都知道,k8s proxy 进程的目的是做service->pod的代理,支持两种方式,一种是在node上添加ip table rule, 为每一个service 启动一个tcp port 做监听,在node上写一条ip table rul