Shinyproxy: [Запрос функции] Возможность добавлять аннотации к модулям в Kubernetes.

Созданный на 22 мая 2019  ·  5Комментарии  ·  Источник: openanalytics/shinyproxy

Привет ребят,

Мне было интересно, можно ли добавить аннотации к модулям, запускаемым с помощьюshininproxy в Kubernetes? Это позволило бы нам прикрепить роль AWS IAM к контейнеру и использовать ресурсы AWS в блестящих приложениях.

Спасибо заранее! И спасибо за всю отличную работу.

Ваше здоровье,

Эмели

enhancement

Самый полезный комментарий

На случай, если у кого-то еще возникнет такая же проблема, я нашел обходной путь для добавления аннотаций и допусков к модулям, запущенным блестящим прокси.
В моей настройке блестящий прокси-сервер запускает модули в выделенное пространство имен. Я запустил еще один контейнер вместе с ShinyProxy, который постоянно аннотирует и исправляет любые модули в этом пространстве имен.

(в разделе развертывания spec ):

- name: shiny-role-spammer
  image: zlabjp/kubernetes-resource
  command:
  - "/bin/bash"
  - "-c"
  - |
    while [ 1 ]; do
      # Add annotation for kube2iam
      kubectl -n external annotate pods --all iam.amazonaws.com/role="arn:aws:iam::123456654321:role/shiny-external";
      # Add tolerations
      kubectl -n external get pods -o jsonpath='{.items[*].metadata.name}' | grep sp- | \
        xargs kubectl -n external patch -p \
        '{"spec":{"tolerations":[{"key":"purpose", "operator": "Equal", "value": "external", "effect": "NoSchedule"}]}}' \
        pod
      sleep 2;
    done

Все 5 Комментарий

Точно по той же причине я хотел бы добавить аннотации к подам, запускаемым блестящим прокси. Я пытался изменить код с этой целью, но мои навыки Java недостаточно хороши.

Если кто-то все еще поддерживает проект, это будет действительно полезная функция!

На случай, если у кого-то еще возникнет такая же проблема, я нашел обходной путь для добавления аннотаций и допусков к модулям, запущенным блестящим прокси.
В моей настройке блестящий прокси-сервер запускает модули в выделенное пространство имен. Я запустил еще один контейнер вместе с ShinyProxy, который постоянно аннотирует и исправляет любые модули в этом пространстве имен.

(в разделе развертывания spec ):

- name: shiny-role-spammer
  image: zlabjp/kubernetes-resource
  command:
  - "/bin/bash"
  - "-c"
  - |
    while [ 1 ]; do
      # Add annotation for kube2iam
      kubectl -n external annotate pods --all iam.amazonaws.com/role="arn:aws:iam::123456654321:role/shiny-external";
      # Add tolerations
      kubectl -n external get pods -o jsonpath='{.items[*].metadata.name}' | grep sp- | \
        xargs kubectl -n external patch -p \
        '{"spec":{"tolerations":[{"key":"purpose", "operator": "Equal", "value": "external", "effect": "NoSchedule"}]}}' \
        pod
      sleep 2;
    done

хорошая идея! Идеально!

всем привет

Спасибо за ваш пиар!
Чтобы не реализовывать каждую функцию Kubernetes в ContainerProxy, мы решили добавить общий способ добавления конкретной конфигурации Kubernetes в приложение ContainerProxy. Эта функция называется kubernetes-pod-patches и позволяет исправить спецификацию пода до того, как он будет создан ContainerProxy.
Более подробную информацию об этой функции можно найти здесь (вам нужно немного прокрутить вниз).
Это должно охватывать ваш вариант использования. Не стесняйтесь открывать вопрос, если у вас возникнут какие-либо проблемы с этой функцией.
Изменение включено только в ShinyProxy 2.4.0

Еще раз спасибо за ваш вклад.

Спасибо @LEDfan , это действительно отличное решение — просто посмотрите на него сейчас!

После некоторых проб и ошибок мне удалось заставить его работать для добавления аннотаций ролей IAM следующим образом:

  - id: 01_hello
    displayName: Hello Application
    description: Application which demonstrates the basics of a Shiny app
    containerCmd: ["R", "-e", "shinyproxy::run_01_hello()"]
    containerImage: openanalytics/shinyproxy-demo
    kubernetes-pod-patches: |
     - op: add
       path: /metadata/annotations
       value: { "iam.amazonaws.com/role": "<YOUR-IAM-ROLE>" }
Была ли эта страница полезной?
0 / 5 - 0 рейтинги