Укладка прямоугольников для взятия как можно меньше места

Из Шаг 1. Создание кластера Amazon

При создании кластера Amazon EKS объект IAM (пользователь или роль), который создает кластер, добавляется в Таблица авторизации Kubernetes RBAC с правами администратора (с разрешениями master: master. Первоначально только тот пользователь IAM может выполнять вызовы на сервер API Kubernetes с помощью kubectl.

blockquote>

Как вы обнаружили, вы можете получить доступ только к кластер с тем же пользователем / ролью, который создал кластер EKS.

Существует способ добавить дополнительные роли в кластер после создания, отредактировав AWS-auth ConfigMap, который был создан. [117 ]

Добавить роль пользователя

Редактируя ConfigMap aws-auth, вы можете добавлять различные уровни доступа в зависимости от роли пользователя.

Сначала вы ДОЛЖНЫ иметь пользователя «system: node: {{EC2PrivateDNSName}}»

apiVersion: v1
kind: ConfigMap
metadata:
  name: aws-auth
  namespace: kube-system
data:
  mapRoles: |
    - rolearn: 
      username: system:node:{{EC2PrivateDNSName}}
      groups:
        - system:bootstrappers
        - system:nodes

Это необходимо для того, чтобы Kubernetes даже работал, давая узлам возможность присоединиться к кластеру. ARN экземпляра роли "- это роль, которая включает в себя необходимые политики AmazonEKSWorkerNodePolicy, AmazonEKS_CNI_Policy, AmazonEC2ContainerRegistryReadOnly и т. Д.

Ниже, которые добавляют вашу роль

   - rolearn: arn:aws:iam::[hidden]:role/ci_deployer
     username: ci-deployer
     groups:
       - system:masters

« Имя пользователя »может фактически быть установлено примерно на что-нибудь. Это кажется важным, только если в ваш кластер EKS добавлены пользовательские роли и привязки.

Кроме того, используйте команду «aws sts get-caller-identity» для проверки среды / оболочки, и учетные данные AWS правильно настроены. При правильной настройке get-caller-identity должен возвращать ту же роль ARN, которая указана в aws-auth.

13
задан 30 October 2008 в 19:43
поделиться

3 ответа

http://www-rcf.usc.edu/~skoenig/icaps/icaps04/icapspapers/ICAPS04KorfR.pdf

По-видимому, эта проблема более трудна, чем это смотрит сначала. Это - интересный алгоритм, так как сначала это предполагает решение и затем изменяет к лучшему его, поэтому если Вы не хотите ожидать оптимального решения, можно просто выполнить его для количества набора повторений для получения приближенного решения (чем дольше Вы выполняете его, тем лучше приближение).

5
ответ дан 2 December 2019 в 01:32
поделиться

Я запустил бы путем скольжения через http://mathworld.wolfram.com - они являются потрясающими для материала как это.

Во-вторых, я мог предположить одурманенный алгоритм, который поместит самое длинное (в X размеров) поле в нижней части, затем самое высокое (в размере Y) сверху его на одной стороне или другом. Затем продолжите складывать их этим "ступившим ступенькой" способом, идущим правильная опека, и вверх (например, идут прямо, пока Вы не можете, затем повыситься, и т.д., и т.д.).

Это, вероятно, неидеально, и может дать Вам плохие результаты, но это - то, что появилось для возражения сначала.

1
ответ дан 2 December 2019 в 01:32
поделиться

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

Например: отсортируйте прямоугольники по размеру, самому большому сначала. Добавьте прямоугольники по одному, пробуя каждое возможное положение за новый прямоугольник. Выберите положение, которое приводит к самой маленькой ограничительной рамке.

Другой жадный подход должен был бы выбрать стартовый прямоугольник, затем неоднократно добавить прямоугольник, который приводит к самому плотному расположению (где плотность определяется как процент области ограничительной рамки, которая заполнена).

3
ответ дан 2 December 2019 в 01:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: