小编mda*_*iel的帖子

在kubernetes中等效的depends_on是什么

我有一个包含以下条目的docker compose文件


version: '2.1'

services:
  mysql:
    container_name: mysql 
    image: mysql:latest 
    volumes:
      - ./mysqldata:/var/lib/mysql 
    environment: 
      MYSQL_ROOT_PASSWORD: 'password' 
    ports: 
      - '3306:3306' 
    healthcheck: 
        test: ["CMD", "curl", "-f", "http://localhost:3306"] 
        interval: 30s 
        timeout: 10s 
        retries: 5 

  test1: 
    container_name: test1 
    image: test1:latest 
    ports: 
      - '4884:4884' 
      - '8443' 
    depends_on: 
      mysql: 
        condition: service_healthy 
    links: 
     - mysql 
Run Code Online (Sandbox Code Playgroud)

Test-1容器依赖于mysql,并且需要启动并运行。

在docker中,可以使用运行状况检查和Depends_on属性来控制它。kubernetes中的运行状况检查等效项是我已经创建的readinessprobe,但是我们如何控制吊舱中容器的启动?

任何方向对此表示极大的赞赏。

我的Kubernetes文件:

apiVersion: apps/v1beta1 
kind: Deployment 
metadata: 
  name: deployment 
spec: 
  replicas: 1 
  template: 
    metadata: 
      labels: 
        app: deployment 

    spec: 
      containers: 
      - name: mysqldb 
        image: "dockerregistry:mysqldatabase" 
        imagePullPolicy: Always 
        ports: 
        - containerPort: 3306 …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubectl kubeadm kubernetes-helm

16
推荐指数
4
解决办法
7475
查看次数

错误:服务器没有资源类型"svc"

Admins-MacBook-Pro:~Harshin $ kubectl cluster-info Kubernetes master运行在http:// localhost:8080

要进一步调试和诊断群集问题,请使用"kubectl cluster-info dump".错误:服务器没有资源类型"services"

我正在关注这份文件

https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html?refid=gs_card

我正在尝试在配置kubectl for amazon eks的第11步中测试我的配置

apiVersion: v1
clusters:
- cluster:
    server: ...
    certificate-authority-data: ....
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: aws
  name: aws
current-context: aws
kind: Config
preferences: {}
users:
- name: aws
  user:
    exec:
      apiVersion: client.authentication.k8s.io/v1alpha1
      command: heptio-authenticator-aws
      args:
        - "token"
        - "-i"
        - "kunjeti"
        # - "-r"
        # - "<role-arn>"
      # env:
        # - name: AWS_PROFILE
        #   value: "<aws-profile>"
Run Code Online (Sandbox Code Playgroud)

kubernetes

13
推荐指数
2
解决办法
9930
查看次数

无法访问 AKS 上 LoadBalancer 类型的 Kubernetes 服务

我正在使用 ACR 容器注册表创建一个普通的 AKS 集群并部署一个虚拟服务,我之前已经做过很多次了,应该可以工作,但事实并非如此 - 服务部署没有错误,我看到了 pod 和服务是活动的,端口似乎匹配 - 但我无法访问 Pod 中运行的应用程序。

这是我的 YAML 文件:

apiVersion: v1
kind: Service
metadata:
  name: dummyapp-prep
spec:
  selector:
    app: dummyapp-prep
  ports:
    - protocol: TCP
      port: 80
  type: LoadBalancer
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: dummyapp-prep
spec:
  selector:
    matchLabels:
      run: dummyapp-prep
  replicas: 1
  template:
    metadata:
      labels:
        run: dummyapp-prep
    spec:
      containers:
      - name: dummyapp-prep
        image: dummyappregistry.azurecr.io/dummyappregistry.azurecr.io/dummyapp-prep:dummyapp-prep-18
        ports:
        - containerPort: 80
      imagePullSecrets:
      - name: secret
Run Code Online (Sandbox Code Playgroud)

一切都部署得很好 - 我看到了该服务并且它获得了一个外部 IP:

kubectl get services
NAME            TYPE           CLUSTER-IP …
Run Code Online (Sandbox Code Playgroud)

yaml azure kubernetes azure-load-balancer azure-aks

3
推荐指数
1
解决办法
1616
查看次数

在分割数据集时,为什么人们要遵循命名约定?

X_train, X_test, y_train, y_test = \
    train_test_split(X, y, test_size=0.30, random_state=1)
Run Code Online (Sandbox Code Playgroud)

在此示例中(X_train, X_test) X,以大写形式提及,而 (y_train, y_test)此处y以小写形式提及。

是否有任何令人信服的理由来遵循该命名约定?

python machine-learning

2
推荐指数
1
解决办法
746
查看次数

在kubernetes GKE上为nginx入口控制器设置缓存控制头

我有一个ingress-nginx控制器处理流量到我在KKE上托管的Kubernetes集群.我使用docs中的helm安装说明进行设置:

文档在这里

在大多数情况下,一切都正常,但如果我尝试通过server-snippet注释设置缓存相关参数,那么应该获得缓存控制头的所有服务内容都会返回404.

这是我的ingress-service.yaml档案:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress-service
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/proxy-read-timeout: "4000"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "4000"
    nginx.ingress.kubernetes.io/server-snippet: |
      location ~* \.(js|css|gif|jpe?g|png)$ {
        expires 1M;
        add_header Cache-Control "public";
      }
spec:
  tls:
    - hosts:
        - example.com
      secretName: example-com
  rules:
    - host: example.com
      http:
       paths:
        - path: /
          backend:
            serviceName: client-cluster-ip-service
            servicePort: 5000
        - path: /api/
          backend:
            serviceName: server-cluster-ip-service
            servicePort: 4000
Run Code Online (Sandbox Code Playgroud)

同样,它只是与正则表达式匹配的资源404(所有.js文件,.css文件等).

有关为什么会发生这种情况的任何想法?

任何帮助表示赞赏!

nginx kubernetes google-kubernetes-engine kubernetes-ingress nginx-ingress

2
推荐指数
1
解决办法
2012
查看次数