ЛР3.Ч2. Основи роботи з хмарними сервісами. Хмарні сервіси для збереження об’єктів
3. Використання об’єктів IBM COS в Node-RED
Доступ до об’єктів COS надається через HTTP API, з яким можна ознайомитися за посиланням. У Node-RED є бібліотеки, які вже надають доступ до певних сервісів без необхідності складного програмування, що дає можливість використовувати COS для збереження файлів з наступним їх використанням в застосунках IIoT.
3.1. Інсталяція пакету node-red-contrib-cos
Запустіть сервіс Node-RED в IBM Cloud, перейдіть в редактор свого застсосунку. Через менеджер палітри встановіть модуль node-red-contrib-cos .
3.2. Налаштування конфігураційного об’єкту з COS
Зайдіть в розділ Configuration Nodes, відкрийте вікно налаштування конфігураційного вузлу Cloud Object Storage.
Відкрийте в іншому вікні перегляд Service credentials для вашого екземпляра COS, який ви створювали в попередніх пунктах. Натисніть кнопку «View credentials» (див. рис.13)
Скопіюйте необхідні поля з JSON файлу в налаштування вузла, як це показано на рис.16. Зверніть увагу на поле Location, там повинно бути те саме розташування, що і для Bucket. В поле ім’я впишіть “MyCOS”. Натисніть «Update» для збереження конфігурації.
рис.16.
3.3. Отримання переліку об’єктів з COS
Ознайомтеся з принципами роботи вузлів з «cos get» та «cos query» з довідника Node-RED. Створіть новий потік, як це показано на рис.17. Зробіть розгортання проекту.
рис.17.
Ініціюйте отримання переліку Bucket. У випадку вдалого отримання на панелі відлагодження Ви повинні побачити цей перелік. Якщо є помилка, перевірте правильність виконання усіх попередніх пунктів.
3.4. Отримання об’єкту з COS
Ініціюйте отримання вказаного у вузлі GET об’єкту, у випадку вдалого отримання на панелі відлагодження Ви повинні побачити цей об’єкт у msg.payload у вигляді масиву. Якщо є помилка, перевірте правильність виконання усіх попередніх пунктів.
3.5. Ініціювання отримання об’єкту з COS через WEB-запит
У даному пункті лабораторної роботи необхідно забезпечити ініціювання зчитування об’єктів через веб-запит. Запит повинен проводитися за шаблоном
host/files/file_name
де host вказує на розміщення веб ресурсу Node-RED, а file_name – ім’я файлу, який необхідно отримати. У випадку позитивної відповіді необхідно вивести «Об’єкт отримано», у випадку негативної – «Об’єкт не вдалося отримати».
Модифікуйте програму, як це показано на рис.18.
рис.18.
Зробіть розгортання проекту, в новому вікні браузеру, впишіть URL, відповідно до рис.19, з вказівкою існуючого в COS файлі. На сторінці повинно відобразитися повідомлення «Об’єкт отримано». Після цього впишіть назву файлу, якого в COS немає – повинні отримати напис «Об’єкт не вдалося отримати»
рис.19.
Видаліть з програми вузла «Відповідь» рядок
msg.payload = "Об'єкт отримано";
Зробіть розгортання проекту. Знову задайте в рядку URL файл, який необхідно вибрати з COS. Замість повідомлення про успішне отримання файлу, він буде зберігатися на локальному ПК.
3.6. Використання файлів COS в наповненні власної сторінки
В даному пункті COS буде використовуватися в якості сховища медіа-даних для відображення на власній Веб-сторінці. Це знадобиться в наступних лабораторних роботах для формування контексту цифрового двійника в хмарі.
Завантажте у свій COS файл за посиланням.
Добавте в програму Node-RED фрагмент, показаний на рис.20. Код у верхньому вузлі Template має мати наступний зміст (необхідно замінити Ivanenkoivannodered):
<iframe id="vs_iframe" src="https://www.viewstl.com/?embedded&url=https://Ivanenkoivannodered.eu-gb.mybluemix.net/files/Dragon.stl" style="border:0;margin:0;width:100%;height:100%;"></iframe>
рис.20.
Зробіть розгортання проекту, відкрийте власну Веб-сторінку, вона повинна мати вигляд, подібний до наведеної на рис.21.
рис.21.
Зробіть копію екрану та разом з посиланням на сторінку відправте у звіті.