# Установка программного обеспечения

## Требования к серверу

Сервер (или риг — эти термины в данном контексте практически взаимозаменяемы) должен быть оснащён видеокартами NVIDIA, так как AMD в настоящее время не поддерживается. Минимальный требуемый объём дискового пространства — 32 ГБ; для надёжности рекомендуется использовать SSD вместо флеш-накопителя. Минимум 8 ГБ оперативной памяти требуется, но 16 ГБ обеспечат большую стабильность. Что касается процессора, система может работать с Celeron на сокете 1151, но для более эффективной работы рассмотрите использование процессора уровня i7-6700.

Перед продолжением настоятельно рекомендуется отключить все разгоны, включая Power Limit (PL), и сбросить видеокарты до заводских настроек. Затем проведите стресс-тестирование системы для проверки стабильности, например, протестировав видеокарты с помощью алгоритма kawpow и нагрузив CPU. Следите за температурами и убедитесь, что всё работает стабильно.

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

## Рекомендуемые драйверы и CUDA (HiveOS)

HiveOS включает собственное управление драйверами через `nvidia-driver-update` команду. Для лучшей совместимости с рабочими нагрузками Clore.ai (особенно ML/AI) используйте следующие рекомендуемые версии:

### Драйверы NVIDIA

| Ветка           | Версия     | Поддержка CUDA | Рекомендуется для                                                    |
| --------------- | ---------- | -------------- | -------------------------------------------------------------------- |
| **R580 (LTSB)** | 580.126.18 | До CUDA 12.8   | Большинство GPU — стабильная, долгосрочная поддержка до августа 2028 |
| **R590**        | 590.48.01  | До CUDA 13.1   | Серия RTX 50 (5090/5080), последние функции                          |

Чтобы установить конкретную версию в HiveOS:

```bash
nvidia-driver-update 580.126.18 --force
```

Для видеокарт серии RTX 50:

```bash
nvidia-driver-update 590.48.01 --force
```

> **Важно:** Не используйте `nvidia-driver-update --force` без указания версии — это может установить более старый драйвер по умолчанию, который не поддерживает современные CUDA-нагрузки.

### Совместимость с CUDA Toolkit

Большинство арендаторов используют Docker-образы, которые включают собственное CUDA-runtime, поэтому хостам обычно не нужно вручную устанавливать CUDA Toolkit. Однако **драйвер хоста NVIDIA должен поддерживать версию CUDA, требуемую рабочей нагрузкой арендатора.**

| Версия CUDA | Минимальный драйвер | Статус                                     |
| ----------- | ------------------- | ------------------------------------------ |
| CUDA 12.4   | R550+               | Широко используется в экосистеме ML        |
| CUDA 12.8   | R570+               | Последняя стабильная ветка 12.x            |
| CUDA 13.1   | R590+               | Последняя, оптимизирована для серии RTX 50 |

**Рекомендация:** Установите R580 LTSB (580.126.18) для широкой совместимости с рабочими нагрузками CUDA 12.x. Если вы хостите видеокарты серии RTX 50, используйте R590 (590.48.01) для полной поддержки CUDA 13.x.

## Регистрация и добавление сервера

### 1. Перейдите на [веб-сайт](http://clore.ai/), зарегистрируйтесь, войдите в систему и перейдите на маркетплейс:

<figure><img src="https://img1.teletype.in/files/0e/86/0e86de72-544d-48d8-8d82-cf120e516a81.png" alt=""><figcaption></figcaption></figure>

### 2. **Добавление сервера:** Существует два способа добавить сервер:

**Способ 1:** Перейдите в раздел «Мои серверы» и нажмите кнопку "+Добавить сервер". Введите имя сервера и нажмите «Далее».

<figure><img src="https://img4.teletype.in/files/f7/8e/f78e0a46-06fa-4a5d-b429-f21b78eafb6c.png" alt=""><figcaption></figcaption></figure>

После добавления сервер будет отмечен красным кругом, что означает, что он неактивен. Мы активируем его позже, а пока кликните по созданному серверу, чтобы получить ключ — он понадобится вам позже.

<figure><img src="https://img4.teletype.in/files/36/ae/36aeeab8-98e0-4fea-81e9-d731d5211df2.png" alt=""><figcaption></figcaption></figure>

### 3. Настройка HiveOS:

Выберите риг и откройте Shell. Для тех, кто редко использует HiveOS, ниже добавлены изображения для наглядности.

<figure><img src="https://img1.teletype.in/files/45/06/4506318a-02cf-4de5-b5c8-bcf44df412ea.png" alt=""><figcaption></figcaption></figure>

<figure><img src="https://img3.teletype.in/files/e7/8e/e78e68e8-04da-4f84-89ab-546426d5f761.png" alt=""><figcaption></figcaption></figure>

<figure><img src="https://telegra.ph/file/49b76dd27191faca74a44.png" alt=""><figcaption></figcaption></figure>

### 4. **Обновление HiveOS:** Выполните команду:

```bash
hive-replace -y --stable
```

#### **Если возникли проблемы с местом на диске в HiveOS:** Если после установки или обновления свободного места на диске меньше, чем ожидалось (например, только 20 ГБ свободно на диске 512 ГБ), выполните следующее:

* **Для M.2:**

  ```bash
  growpart /dev/nvme0n1 4
  resize2fs /dev/nvme0n1p4
  ```
* **Для SATA:**

  ```bash
  growpart /dev/sda 4
  resize2fs /dev/sda4
  ```

### 5. **Запустите обновления последовательно:**

```bash
selfupgrade --force
apt update
apt upgrade
apt autoremove
```

### 6. **Обновите необходимые драйверы:**

```bash
nvidia-driver-update --force
```

> **Подсказка:** Чтобы установить конкретную рекомендованную версию драйвера, используйте:
>
> ```bash
> nvidia-driver-update 580.126.18 --force
> ```
>
> Для видеокарт серии RTX 50 используйте версию `590.48.01` или новее.

### 7. **Перезагрузите риг:**

```bash
reboot
```

### 8. **Переключитесь в режим суперпользователя:**

```bash
sudo -i
```

### 9. **Установите программное обеспечение:**

```bash
bash <(curl -s https://gitlab.com/cloreai-public/hosting/-/raw/main/install.sh)
```

Если система сообщает, что `git` отсутствует, установите его с помощью:

```bash
apt install -y git
```

Затем повторите установку.

Если вы столкнулись с `gpg` ошибкой, используйте:

<figure><img src="https://telegra.ph/file/e2ef8c5760193ad523e20.png" alt=""><figcaption></figcaption></figure>

```bash
apt install gpg -y --allow-downgrades
```

<figure><img src="https://img3.teletype.in/files/66/1c/661c9073-cc8e-4734-aa85-cff08902d4d6.png" alt=""><figcaption></figcaption></figure>

После этого повторно запустите установку.

```
bash <(curl -s https://gitlab.com/cloreai-public/hosting/-/raw/main/install.sh)
```

### 10. **Активируйте сервер:**

```bash
/opt/clore-hosting/clore.sh --init-token <token>
```

Замените `<token>` на ключ, полученный ранее.

Если ошибка указывает на отсутствующую папку или файл, скорее всего установка не завершилась корректно, и папка `clore-hosting` не была создана. В этом случае повторите установку.

### 11. **Завершающая перезагрузка:**

Перезапустите риг, подождите немного и обновите страницу маркетплейса. Если всё было настроено правильно, сервер будет отмечен зелёным кругом.

```
reboot
```

<figure><img src="https://img2.teletype.in/files/98/9c/989c1cbd-2670-4568-b784-020af71451be.png" alt=""><figcaption></figcaption></figure>

## Как отключить все установленные сервисы

Если нужно отключить всё ранее установленное:

1. Отключите сервисы:

   ```bash
   systemctl disable clore-hosting.service
   systemctl disable docker.service
   systemctl disable docker.socket
   ```
2. Перезагрузите систему:

   ```bash
   reboot
   ```

## Как снова включить сервисы

Чтобы повторно включить сервисы:

1. Включите сервисы:

   ```bash
   systemctl enable clore-hosting.service
   systemctl enable docker.service
   systemctl enable docker.socket
   ```
2. Перезагрузите систему:

   ```bash
   reboot
   ```

## Удаление ранее установленного токена

Чтобы удалить токен, используйте команду:

```bash
/opt/clore-hosting/clore.sh --reset
```

Файл с токеном находится по пути:

```
/opt/clore-hosting/client/auth
```
