Включение ротации журналов для существующего локального контейнера Connector Host
  • 17 Sep 2022
  • 1 Минута для чтения
  • Авторы

Включение ротации журналов для существующего локального контейнера Connector Host


Article Summary

Назначение

Данное руководство носит сугубо технический характер и должно быть согласовано с ИТ-отделом вашей организации.

В этом документе перечислены шаги для клиентов по включению log-rotations для их существующих контейнеров docker, которые не используют log-rotations.

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

Что такое Log-rotations в Docker?

Местный коннекторный узел Tulip работает в контейнере docker, который использует драйвер json-logging для хранения файлов журнала локально на виртуальной машине. Эти файлы могут занимать значительный объем дискового пространства, если не включена функция log-rotations для docker. Log-rotation позволяет ограничить размер файла журнала и количество таких файлов для каждого контейнера.

Реализация

Следующие шаги покажут, как включить вращение журналов для docker, перезапустить docker, удалить существующий контейнер и создать новый контейнер для локального узла коннектора Tulip.

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

Вращение журналов

Вращение журналов можно включить, выполнив следующие команды на виртуальной машине Linux

$ sudo su $ touch /etc/docker/daemon.json

$ cat > /etc/docker/daemon.json <<EOF 



> 
> {  
> 
> "live-restore": true,  
> 
> "log-driver": "json-файл",  
> 
> "log-opts": {  
> 
> "max-size": "10m",  
> 
> "max-file": "3"  
> 
> }  
> 
> }  
> 
> EOF
> ```
> 
> 
> 


### Перезапуск Docker


Для того чтобы docker мог использовать конфигурацию log-rotations, пожалуйста, перезапустите docker, выполнив следующую команду 


`$ sudo systemctl restart docker`


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


$ sudo docker ps

В результате появится список деталей существующего контейнера, вы можете скопировать идентификатор контейнера, который будет использоваться в следующем шаге



`$ sudo docker stop <container id>`


`$ sudo docker rm <container id>`


### Создание нового контейнера


Повторно выполните следующую команду docker run, которая была выполнена при первой настройке локального узла коннектора Tulip


`$ docker run -d \ 
--name tulip-connector-host \ 
-e TULIP_FACTORY='https://<FACTORY>.tulip.co' \ 
-e TULIP_UUID='<UUID>' \ 
-e TULIP_MACHINE_SECRET='<SECRET>' \ 
-e TULIP_DEVICE_TYPE=onprem 
-e HTTP_PROXY='' \ 
-e HTTPS_PROXY='' \ 
-e EXIT_ON_DISCONNECT=true \ 
--restart=unless-stopped \ 
--net=host \ 
--mount type=volume,source=tuliplog,target=/log \ 
bckca2dh98.execute-api.us-east-1.amazonaws.com/public/connector-host:prod`


Если вышеуказанные учетные данные недоступны, пожалуйста, свяжитесь с [Tulip](mailto:support@tulip.co).


Контейнер, на котором работает локальный Connector Host компании Tulip, должен быть уже настроен, а вращение журналов включено. 


Чтобы убедиться, что контейнер восстановлен, вы можете проверить журналы нового контейнера, выполнив следующую команду 


`$ docker logs <имя контейнера>`


Была ли эта статья полезной?