Відмінності між версіями «Брацька Хмара»

Матеріал з Брацка Правка
Перейти до: навігація, пошук
(Компоненты)
(Определение ролей)
Рядок 98: Рядок 98:
 
:#Додаткових модулів, які обслуговують [[#Запись на курсы|запис на курси]] і [[#Организация мероприятий|організацію заходів]], а також надають [[#Экзаменационные вопросы|екзаменаційні питання]].
 
:#Додаткових модулів, які обслуговують [[#Запись на курсы|запис на курси]] і [[#Организация мероприятий|організацію заходів]], а також надають [[#Экзаменационные вопросы|екзаменаційні питання]].
  
===Определение ролей===
+
===Визначення ролей===
:По завершению определённых курсов [[Брацка Учебка]] должна отдавать информацию [[Оплёт]]у, тот должен назначать новую роль и отдавать эту роль в [[WSO2 Identity Server]], а [[WSO2 Identity Server]] -- распространять по всем приложениям. Ранее эту проблему пытались решать с [[OpenLDAP]]. Всё решалось пока не сломались на проблеме изменения ролей -- [[OpenLDAP]] принимал только одну роль и далее не менял её.
+
:Після завершення певних курсів [[Брацька Учебка]] має віддавати інформацію [[Оплет]]у, той повинен призначати нову роль і віддавати цю роль у [[WSO2 Identity Server]], а [[WSO2 Identity Server]] -- розповсюджувати за всіма додатками. Раніше цю проблему намагалися вирішувати з [[OpenLDAP]]. Все вирішувалося доки зламалися проблемі зміни ролей -- [[OpenLDAP]] брав лише одну роль і далі не змінював її.
  
 
===Организация мероприятий===
 
===Организация мероприятий===

Версія за 12:25, 12 лютого 2023

Брацька Хмара (CNM Cloud; іноді кодується як "bo", далі те тексту - Хмара) -- це технологічні ресурси, що обслуговують онлайн операції Брацької Школи (тут і далі тексту - "Школи"). Хмара являє собою сукупність програмного забезпечення та матеріальної частини, що його підтримує.


Зміст

Цілі і завдання

Цілі

Хмара надає автоматично або підтримує технологічно тих людей, які надають послуги, які мають на меті:
  1. Професійно зорієнтувати, підтримуючи організацію оглядових семінарів, практик та консультацій для тих, хто визначається з професією.
  2. Підготувати до професійної діяльност, забезпечуючи навчальний процес, навчання на робочому місці або сертифікацію професійних компетенцій для тих, хто напрацьовує професійні кваліфікації.
  3. Працевлаштувати, надаючи знання, інструменти, сертифікації, доступ до контактів та маркетингових каналів тим, хто:
    • Вже готовий до професійної діяльності та шукає конкретну роботу.
    • Підтримати працевлаштованих, надаючи адміністративні послуги та консультації, а також фінансуючи підприємства тих випускників, які вирішили організувати чи просувати свої власні бізнеси.

Завдання

Хмара вирішує завдання забезпечення потенційних та існуючих учнів Брацької Школи та залучених до проєкту iDosvid майданчиком для навчання та роботи, зокрема, Хмара забезпечує:
  • Усіх користувачів Всесвітньої Павутини -- гостьовий доступ до громадських ресурсів Хмари, включаючи Правку, Вебку, Бачку, Брацки Жици, Кринку
  • Зареєстрованих в Оплет користувачів - користувальницьким доступом до Кабіни
  • Учнів - користувальницьким доступом до Учебки, Правки, Вебки, Бачки, Жици, Сетки та адміністративним доступом до тих Курсових Прилад, які вони вивчають.
  • Координаторів і підрядників -- користувальницьким доступом до Кринки та адміністративним доступом до тих Опитних Прилад, над якими вони працюють.
  • Підмайстрів, майстрів та співробітників -- користувальницьким доступом до Связки, Пошти, Справи та адміністративним доступом до тих Повних Прилад, які вони обслуговують.
  • Учасників коротких тренінгів -- доступом до тих віртуальних ресурсів, які створені спеціально для цього тренінгу. Школа влаштовуватиме тренінги та планує видавати ресурси для практичних занять. Після реєстрації на тренінг, учасник повинен отримувати імейл із посиланням на ресурс із логіном та паролем. Ресурс має бути або віртуальною машиною, або контейнером. Фахівець вважає, що оскільки контейнер створюється одним рядком, можна зробити скрипт під Лінукс, який створюватиме контейнер з образу та додаватиме до нього логін та пароль.

Загальні положення

Хмара має сотні додатків і безліч систем, точне число яких постійно змінюється. У цьому розділі згадані лише основні з великої різноманітності додатків та систем.

Технологічні яруси

Хмара включає три яруси програмного забезпечення:
  1. Інфрастуктуру звану Брацькі Ферми,
  2. Сполучне забезпечення або федеральну службу звану Оплет, і
  3. Додатки користувача.

Підтримка програмних мов

Хмара підтримує такі мови:
  • PHP. Підтримуються версії 7.4. и 8.0.9. Apache HTTP server визначає, яка мова використовуватиметься через скрипти типу:

    <FilesMatch \.php$># From the Apache version 2.4.10 and above, use the SetHandler to run PHP as a fastCGI process server SetHandler "proxy:unix:/run/php/php7.4-fpm.sock|fcgi://localhost"</FilesMatch>

  • Python.

Брацькі Ферми (інфраструктура)

Основна вікі-сторінка: Брацки Фермы

Ділова Ферма

Основна вікі-сторінка: Ділова Ферма

Дослідна Ферма

Основна вікі-сторінка: Дослідна Ферма

Кампусна Ферма

Основна вікі-сторінка: Кампусна Ферма

Забезпечення Ферм (зведення)

Інфраструктура (Ферми)
Компоненти Назва Призначення Технологія Веб‑адреса
Ділова Приватна хмара Підтримка Додатків користувача і Сполучного забезпечення OpenStack Захована
Віртуальне середовище Управління віртуальними машинами для Дослідна Хмара ProxmoxVE
Моніторинг Стеження за роботою обчислювальних серверів та повідомлення про неполадки Nagios Core
Установник Інструмент для встановлення, конфігурації та видалення пакетів програмного забезпечення APT
Веб-сервер Первинне управління запитами, що надходять HTTP NGINX
Вторинне управління запитами надходять HTTP Apache
Дослідна
Кампусна
Оплетна

Обплет (федераційна служба)

Основна вікі-сторінка: Оплет

Оплет -- це те службове програмне забезпечення, яке збирає та Інфраструктуру Хмари, та його Додатки користувача у єдину систему. Оплет являє собою сполучне програмне забезпечення, яке може забезпечувати все незалежно від їх розташування в системі, перш за все, послугами з ідентифікації всіх користувачів 'Хмари', реєстрації нових користувачів, визначення ролей користувачів, авторизації їх доступів і таке інше далі.

Запис на курси

В даний час запис на курси здійснюється через Брацьку Учебку, як правило, через самозапис. Самозапис створює незручності для деяких учнів - перед записом вони повинні знайти необхідний їм курс. Пропонується створити модуль Оплет, який автоматично записуватиме учнів, причому не тільки в Брацькій Учебці, але і на кампусі VIT.

Захист від ботів

Для захисту від "ботів", тобто веб-роботів, спочатку було встановлено Google-ловська ReCAPTCHA, проте вона не працювала для користувачів у Китаї, де послуги Google заблоковані, і тому було відключено. Планується додати просту, не-Google-івську Friendly Captcha на реєстрацію (https://friendlycaptcha.com/; https://github.com/FriendlyCaptcha).
У той же час, будь-яка CAPTCHA погіршує досвід користувача. Кажуть, що найкраща CAPTCHA – це її відсутність. CAPTCHA не буде потрібна, коли в Керування користувачами буде додано функцію автоматичного видалення облікових записів. Negative Captcha (https://github.com/subwindow/negative-captcha) -- ще один цікавий проект для випробування.

Ідентифікаційні самопослуги

Через проблеми з почтовим сервером, в даний час не працює відновлення пароля, яке необхідно відтворити та протестувати після вирішення проблем із поштою.

Інтерфейс

Оплет потребує нового користувальницького інтерфейсу, включаючи приймальну та реєстраційну сторінки, а також кабінет користувача.

Компоненти

Оплет складається з:
  1. Ядра, який являє собою систему керування користувачами, написану на Yii,
  2. Ідентифікаційний сервер, який надає дані ядра всім користувачам додаткам,
  3. Додаткових модулів, які обслуговують запис на курси і організацію заходів, а також надають екзаменаційні питання.

Визначення ролей

Після завершення певних курсів Брацька Учебка має віддавати інформацію Оплету, той повинен призначати нову роль і віддавати цю роль у WSO2 Identity Server, а WSO2 Identity Server -- розповсюджувати за всіма додатками. Раніше цю проблему намагалися вирішувати з OpenLDAP. Все вирішувалося доки зламалися проблемі зміни ролей -- OpenLDAP брав лише одну роль і далі не змінював її.

Организация мероприятий

Несколько приложений имеют свои функционалы по организации мероприятий (event) -- Брацка Учебка имеет календарь упражнений и экзаменов, Брацка Сетка предоставляет возможность организации мероприятий группы, Брацка Крынка организует календарь необходимых к выполнению работ и так далее. Некоторые мероприятия также должны публиковаться за пределами Облака, на страницах социальных сетей типа Фейсбука. Для централизации нескольких календарей, планировалось создание специального модуля Оплёта, где можно бы было отслеживать информацию из разных источников и размещать её в личном кабинете пользователя.

Почтовые ящики

Почтовые ящики работают на основе Почтового сервера. Две проблемы требуют решений:
  1. В профиль пользователя необходимо добавить поля для корпоративных имейлов. Сейчас почту автоматически может получить только тот, кто не указал своего электронного адреса при создании почты.
  2. Доступ к персональному ящику должны получать только пользователи с правами CertFellow и выше.

Управление пользователями

Заведение новых учётных записей и удаление тех записей, которые в течение 6-ти месяцев не завершили ни одного курса.

Федерационная идентификация

Пользовательская федерация налаживается на базе WSO2 Identity Server. До лета 2021, она строилась на OpenLDAP, а до 2018 года -- на SimpleSAMLphp. Планируется:
  1. Перевести основную идентификацию и авторизацию с OpenLDAP на WSO2 Identity Server в рамках проекта Перевод Оплёта на WSO2 IS.
  2. В тех приложениях, которые работают с OpenLDAP, на регистрационных страницах оставить кнопку "LDAP login". Альтернативно, эту кнопку можно разместить на регистрационной странице WSO2 IS.
  3. Проверка SSO. Более 3х десятков пользовательских приложений включено в "Облако" и, заходя в каждое из них, сейчас пользователь не должен логиниться отдельно. Теоретически, SSO -- это родная функция WSO2 Identity Server, но, после перехода с OpenLDAP на WSO2 Identity Server, каждое приложение должно проверяться.

Экзаменационные вопросы

В настоящее время, Брацка Учебка позволяет загрузить экзаменационные вопросы в корневую директорию, откуда их могут задействовать отдельные курсы. Однако централизованная статистика по этим вопросам отсутствует. Например, ученик может получать один и тот же вопрос в разных курсах. Кроме того, требуется использование отдельных вопросов в других приложениях, таких как Брацка Вебка, и этот функционал также отсутствует.
Далее, Брацка Учебка активно использует элемент "Лекция", но не похоже, что этот элемент не сохраняет ответы учеников. Однако некоторые из ответов в лекциях необходимы для сохранения в качестве полей профиля. Moodle содержит пару плагинов для лекций, но не ясно решают ли эти плагины проблему сохранения ответов.
Планируется унифицировать тесты по всей платформе с помощью нового модуля Оплёта.

Обеспечение Оплёта (сводка)

Ярус Название Предназначение Технология Веб‑адрес
Связующее обеспечение (Оплёт) Идентификация Получение данных от ядра и взаимосвязь с пользовательскими приложениями WSO2 IS
Ядро и пользовательский интерфейс Управление регистрацией, идентификацией и авторизацией доступов пользователей Yii (custom code) kabina.bskol.com

Пользовательские приложения

Пользовательские приложения -- это приложения для конечных пользователей.

Типы приложений

Облако предоставляет три типа приложений:
  1. Полные приложения, то есть те, которые используются по тому основному назначению, для которого они были созданы,
  2. Тренировочные приложения, то есть те, которые используются для отработки практических навыков работы с ними, и
  3. Эксперементальные приложения, то есть те, которые используются

Требования к приложениям

Основная вики-страница: Требования к приложениям Брацкого Облака
Требования к приложениям описаны на вики-странице Требования к приложениям Брацкого Облака.

Обеспечение прилад (сводка)

Ярус Название Предназначение Технология Веб‑адрес
Пользовательские приложения Бачка Размещение видео файлов AVideo backa.bskol.com
Вебка Администрация веб-страниц WordPress vebka.bskol.com
Жици Организация видео- и аудио-конференций Jitsi jitsi.bskol.com
Крынка Работа разработчиков над проектами с установленным service desk приложением для сбора информации по проблемам и хранение исходных кодов уникального программного обеспечения GitLab krynka.bskol.com
Пошта Электронная почта Roundcube posta.bskol.com
Правка Открытый источник знаний и, одновременно, место первоначальной работы подмастерьев MediaWiki pravka.bskol.com
Связка Полезные контакты SuiteCRM svazka.bskol.com
Сетка Социальная сеть HumHub setka.bskol.com
Справа Административный учёт, электронная коммерция (Careerprise Shop) и работа персонала над проектами Odoo sprava.bskol.com
Учебка Бесплатные учебные курсы Moodle ucebka.bskol.com
  Арендованное обеспечение
Эксперементальные приложения Campus Учебные курсы VIT OpenEdX campus.vit4all.com
Agile Практика для VIT курсов по Agile software Taiga agile.vit4all.com
Project Практика для VIT курсов по project management software ProjecQtOr project.vit4all.com
Redmine Практика в Redmine для VIT курсов по project management software Redmine redmine.bskol.com

Полные приложения

В сети Интернет, полные приложения для пользователей размещены на различных URL при том, что на каждом из URL различные сервисы планируется сделать доступными под различными поддоменами по принципу [поддомен].[домен].[расширение].

Бачка (AVideo)

Основная вики-страница: Брацка Бачка
Брацка Бачка -- это средство загрузки, хранения и просмотра видео-материалов. Видео построено на основе программного обеспечения AVideo (установлена версия 11.3). Часть курсов Бачки, например, видео-материалы курса Брацки Техобзор, может быть доступна без оплаты всем посетителям сети Интернет. Доступ к некоторым материалам может предоставляться на коммерческой основе.

Вебка (WordPress)

Основная вики-страница: Брацка Вебка
Брацка Вебка -- это официальный веб-сайт Брацкой Школы, который представляет Школу в сети Интернет. Вэб-сайт построен на основе программного обеспечения WordPress и доступен для просмотра бесплатно 24 часа в день 7 дней в неделю любому посетителю сети Интернет.
Для разработки веб-сайта используется конструктор страниц Elementor Pro. При обновлении версии WordPress до 5.8 содержание страницы не отображалось.

Жици (Jitsi)

Основная вики-страница: Брацки Жици
Брацки Жици -- это инструмент Брацкой Школы для организации видео- и аудио-конференций. Жици построены на основе программного обеспечения Jitsi и организованы кластером. Жици доступны для любых участников конференций, но начинать сессии могут только те, кто зарегистрирован в Оплёте.

Крынка (GitLab)

Основная вики-страница: Брацка Крынка
Брацка Крынка -- это средство для работы над проектами, построенное на основе программного обеспечения GitLab и доступное исключительно администраторам Брацкой Школы и авторизованным ими разработчикам программного обеспечения. Доступ к Крынке осуществляется исключительно по PKI.

Пошта (RoundCube)

Основная вики-страница: Брацка Пошта
Брацка Пошта -- это электронная почта, построенная на основе Почтового сервера и доступная исключительно выпускникам семинара Выбор Профессии.

Правка (MediaWiki)

Основная вики-страница: Брацка Правка
Брацка Правка -- это открытая база знаний Брацкой Школы, построенная на основе программного обеспечения MediaWiki и доступная для просмотра бесплатно 24 часа в день 7 дней в неделю любому посетителю сети Интернет. Вопрос подключения последних стабильных версий к OpenLDAP не был разрешён, потому установлена устаревшая версия 1.31.1

Разделка

Эта прилада -- перспективная. Её идея -- предоставить подмастерьям нечто типа Microsoft Office или GoogleDocs. В данный момент, установлен Nextcloud. Тут можно делиться файлами: по ссылке, или с конкретным пользователем. Ссылке можно задавать срок действия. Работают почтовые уведомления. Есть разные приложения, календарь, задачи, и т.д.

Связка (SuiteCRM)

Основная вики-страница: Брацка Связка

Сетка (HumHub)

Основная вики-страница: Брацка Сетка
Брацка Сетка -- это корпоративная социальная сеть. Сетка построена на основе программного обеспечения HumHub (установлена версия 1.9.1).

Справа (Odoo)

Основная вики-страница: Брацка Справа
Брацка Справа -- это средство управления людскими и материальными ресурсами предприятия, построенное на основе программного обеспечения Odoo. Часть Справы, например, открытые документы предприятия, может быть доступна всем посетителям сети Интернет. Другая часть, например, данные клиентов предприятия, доступна исключительно тем сотрудникам Брацкой Школы, которые подписали соглашение о неразглашении конфиденциальной информации.

Учебка (Moodle)

Основная вики-страница: Брацка Учебка
Брацка Учебка -- это средство организации учебных курсов и сертификационных программ, построенное на основе программного обеспечения Moodle (установлена версия 3.11.2.). Часть курсов Учебки, например, Брацка Вводка, может быть доступна без оплаты всем посетителям сети Интернет. Доступ к некоторым курсам может предоставляться на коммерческой основе.

Опытные приложения

OpenEdX

Вирджинский Технологический Институт использует OpenEdX, а не Moodle, для своих курсов. Отдельные пользователи Облака допускаются к этим курсам.

ProjecQtOr

Вирджинский Технологический Институт использует ProjeQtOr в практических занятиях с обеспечением для управления плановыми разработками. Отдельные пользователи Облака допускаются к этим занятиям.

Redmine

Redmine исторически использовался в Брацкой Крынке. Сейчас он должен стать приложением для экспериментов с программным обеспечением управления разработками.

Taiga

Вирджинский Технологический Институт использует Taiga software в практических занятиях с обеспечением для управления гибкими разработками. Отдельные пользователи Облака допускаются к этим занятиям.

Поддержка и развитие

Общая стратегия

  1. Поддерживать те технологические ресурсы, которые имеются в наличии, для чего заключить договор на обслуживание каждого ресурса.
  2. Набирать координаторов проектов для разработки запросов и требований.
  3. Искать исполнителей на те Работы в Брацкой Школе, которые относятся к технологическим ресурсам.

Развитие

Основная вики-страница: Работы над Bskol

Связанные лектио