Кращі практики для оновлення пакетів UNIX?


30
  • Як ви оновлюєте свої сервери?
  • Якщо ви використовуєте менеджер пакунків на зразок Aptitude , чи зберігаєте ви історію оновлення / встановлення, і якщо так, як це зробити?
  • Встановлюючи або оновлюючи пакети на декількох серверах, чи є способи максимально прискорити процес?

Відповіді:


19

У системах на базі Linux / Debian, cron-apt - це дуже зручний інструмент, який може керувати автоматизацією apt через cron.

Я використовую його apt-get updateщодня і надсилаю мені електронний лист, якщо потрібно буде встановити нові оновлення.

Ось короткий і добре зроблений вступ до цього інструменту .


Мені подобається мати мінімум автоматично оновлених пакетів, важливими є оновлення безпеки. З цієї причини я додаю наступне до конфігураційного файлу cron-apt: OPTIONS="-o Dir::Etc::SourceList=/etc/apt/security.sources.list" а потім роблю /etc/apt/security.sources.list лише включені сховища безпеки Debian. Таким чином, я отримую всі оновлення безпеки автоматично встановлені вчасно (щовечора) і можу робити інші, більш ризикові оновлення, які можуть порушити справи вручну.
Дрю Стівенс

10

Щодо вашого третього запитання: я завжди запускаю локальне сховище. Навіть якщо це лише для однієї машини, це економить час у випадку, якщо мені потрібно буде перевстановити (я зазвичай використовую щось на зразок автодатності автокреативності), а для двох машин це майже завжди окупається.

Для кластерів, якими я адмініструю, я зазвичай не зберігаю явні журнали: я дозволяю менеджеру пакунків робити це за мене. Однак для цих машин (на відміну від настільних комп'ютерів) я не використовую автоматичні установки, тому в мене є свої примітки про те, що я мав намір встановити на всіх машинах.


4
Ого; чи всі звертаються з проханням, бо я такий геніальний, або люди біжать, щоб отримати бейдж? ;)
Пробіг


4

Я використовую apt-історію для історії. Я не маю уявлення, чому цей корисний інструмент не включений за замовчуванням, це перший пакет, який я розгортаю з лялькою .


Як історія apt-історії відрізняється від записаної за замовчуванням у / var / log?
jldugger

Я не знав про що ви маєте на увазі (з вашої відповіді); Я здогадуюсь, я познайомився з влучною історією та звик до неї.
відмітка

3

Я щовечора запускаю / usr / bin / apt-get update -qq; / usr / bin / apt-get dist-upgrade -duyq як роботу з кроном . Вранці у мене є повідомлення про те, які пакунки потрібно оновити, а файли вже завантажені на машину.

Тоді я, як правило, роблю знімок машини (більшість наших серверів є віртуальними), роблю влучне оновлення apt-get dist , перевіряю nagios і переконуюсь, що все працює, і знімаю знімок.

Нарешті, я зберігаю перелік усіх змін, внесених на кожен сервер у вікі , щоб відслідковувати будь-які проблеми, які виникають пізніше.

Що стосується обмеження надмірних завантажень, я розумію, що ви можете встановити кешування веб-проксі (кальмар?) Між вашими серверами та Інтернетом, які кешуватимуть файли .deb під час першого доступу до них. Можливо, це простіше, ніж налаштування локального сховища пакетів - і має додаткову перевагу прискорення загального веб-перегляду.


1

apt-cacher зручний для кешування пакетів, він буде кешувати перший раз, коли вони знадобляться, а не заповнити повне дзеркало всього сховища, заощадивши при цьому диск та пропускну здатність. Це також зручно, оскільки він передає перший запит пакета безпосередньо до запитувача, одночасно кешуючи його, щоб не було додаткової затримки.


1

Запуск локального сховища - це найкращий спосіб керувати саме тим, що знаходиться на локальних серверах. Це також дозволяє легко розгортати власні списки або спеціальні локальні пакети. Мені відомо, що я робив локальні мета-пакети, які є просто величезною кількістю залежностей, щоб зробити локальну установку легкою. (наприклад, "apt-get install local-mailserver"). Це має і побічний ефект, який також дозволяє "версії" змін вашої конфігурації. (Для більш складного управління конфігурацією вам знадобиться щось на зразок Лялькового)


1

Для наших вікон Windows ми маємо локальний сервер WSUS та стандартне вікно для застосування щомісячних патчів. Для систем Linux (RHEL) у нас на кампусі є супутниковий сервер RHN, до якого вони всі приєднані. Це забезпечує приємну інформаційну панель кожної об'єднаної системи, яку ви адмініструєте, а також неприкладені оновлення для кожної системи. Для тих, хто знаходиться в маріонетці, ми видаляємо сценарій, який автоматично застосовує патчі під час звичайного вікна та надсилає сповіщення електронною поштою з результатами.


0

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

Що стосується речей Windows, я використовував Служби оновлення Windows Server із дуже задоволеними результатами.


0

Якщо ви використовуєте менеджер пакунків на зразок Aptitude, чи зберігаєте ви історію оновлення / встановлення, і якщо так, як це зробити?

apt зберігає вхід / var / log / apt /, а dpkg використовує /var/log/dpkg.log. Зокрема, dpkg є досить зручним.


0

На OpenSuSE Linux, SLES та Novell OES (усі продукти на базі SuSE) у нас є сценарій, який працює на блискавці та шукає пакети, які потрібно оновити. Коли він знайде його, він подає квиток JIRA і присвоює його сисадмінам. Коли ми встановлюємо оновлення, ми закриваємо квиток, який залишає слід аудиту, який повідомляє нам, коли він був встановлений і ким. Це можна узгодити / підтвердити за допомогою журналів блискавки та sudo, які централізовані на сервері систематизації.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.