Путь маленького белого по развертыванию openstack с помощью devstack

задняя часть сервер Ubuntu OpenStack
Путь маленького белого по развертыванию openstack с помощью devstack

0. Предисловие

Как человек, который хочет начать работу с облачными вычислениями, для большинства людей первым шагом является изучение openstack, а первый шаг, с которым сталкиваются люди, изучающие openstack, — это первая «трудность» при использовании инструмента автоматического развертывания devstack для развертывания openstack. окружающая обстановка. В первый раз, когда я прикоснулся к этой штуке, потребовалось более двух дней, чтобы успешно развернуть Ubuntu Server и Ubuntu Desktop версии 16.04. Многие говорят, что в десктопной версии много ям, да и протестовых проблем действительно больше, чем в серверной, но все они решаемы. Одной из самых недружественных для новичков является проблема с сетью, и далее будет показано, почему. Так что, если вы покупаете иностранный VPS самостоятельно, с этим проще справиться, потому что есть хитрая операция в использовании.Если у вас хорошая скорость интернета, вы можете не столкнуться с этими проблемами, и вы можете их игнорировать.

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

Тогда расскажи мне о моем окружении

  • Mac 10.12.6
  • VirtualBox 5.1.28
  • Ubuntu Server 16.04 4G+20G (временный тестовый devstack, слышал, что питов немного)
  • Ubuntu Desktop 16.04 4G+80G (обычно используется)
  • VPS (желательно) (т.к. нищенский вариант, не подходит для прямого развертывания и обучения в мирное время)

1. Серверная версия Ubuntu

Установить сервер Ubuntu

Первый шаг — установить Ubuntu Server в Virtual Box, пропустите этот шаг. Я полагаю, что вы некоторое время контактировали с виртуальными машинами, но при небольшом внимании может быть немного больше памяти и жесткого диска. Поскольку я не планирую использовать эту версию сервера в будущем, моя конфигурация 4G + 20G

SSH в виртуальную машину

Одна из проблем, с которой вы столкнетесь после его создания, заключается в том, что интерфейс такой уродливый. . . Поэтому, если он может работать на хост-компьютере, SSH как раз для вас.
Что касается тех, кто не может использовать SSH, проверьте информацию самостоятельно.Здесь я в основном представляю конфигурацию сетевой карты.Я использовал две сетевые карты:
Первый:



Сделайте сопоставление портов, сопоставьте 2222 хоста с 22 виртуальной машиной, это для использования SSH в будущем.
секунда:

После завершения настройки установите выбранную сетевую карту для включения DHCP в глобальной конфигурации. Для тех, кто не знаком с различными режимами подключения сетевой карты, вы можете проверить информацию, чтобы узнать.

Тогда подключитесь использовать непосредственно в хосте

ssh -p 2222 fitzeng@127.0.0.1

fitzeng к вашему имени пользователя.
При возникновении различных проблем можно обратить внимание на два момента:
1. Брандмауэр
2. поставить~/.sshв папкеknown_hostsФайл удален и снова подключен

Начать развертывание

Основной учебник здесь зависит от официального, и я обновлю эти заметки.

Для развернутых сценариев требуется пользователь без полномочий root с привилегиями root.

sudo useradd -s /bin/bash -d /opt/stack -m stack

echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
sudo su - stack

cd /opt/stack
git clone https://git.openstack.org/openstack-dev/devstack
cd devstack

Если приведенный выше клон слишком медленный или клон не может работать, вы можете попробовать исходный код github.

git clone https://github.com/openstack-dev/devstack.git

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

cp samples/local.conf ./
vim local.conf

Если вам повезет, будьте благоразумны и, наконец, выполните./stack.shПрямо до конца. . . Но впереди нас ждет еще много ям.
Но хорошо то, что его журнал и отчет об ошибках очень свежие, и вы можете быстро найти проблему.Иногда вы можете найти решение, если будете искать журнал напрямую.
Если сценарий завершается напрямую, HOST_IP отсутствует. потом прямо вlocal.confдобавить позже

HOST_IP=x.x.x.x
GIT_BASE=https://github.com

Какой именно HOST_IP находится на вашей виртуальной машине, смотрите ifconfig. Тогда рекомендуется заменить источник git на github.
Здесь вы можете проверить, есть ли у вашего источника какие-либо проблемыapt-get updateЕсли есть, поместите источник проблемы непосредственно в/etc/apt/sources.list.d/Перед удалением рекомендуется сделать резервную копию. тогда рекомендуйтеapt-get upgradeНа какое-то время версия Python должна оставаться по умолчанию 2.7.X, и если есть какой-либо журнал, не соответствующий Python 3.4, он будет проигнорирован. Если вы перейдете на 3.4, у многих библиотек возникнут проблемы. Если вы Python 3.X, вы можете поставить/user/bin/Python2.X по ссылкам на файлы Python в этом каталоге. Выполнить в это времяpython -VВы можете увидеть результат.

Однако вышеперечисленное устраняет только ощутимые ошибки, а есть невидимые ошибки.Вы столкнетесь с проблемами сети.Если вы хотите быть более плавным, вы можете напрямую заменить источник.
Изменить источник пункта

mkdir ~/.pip
vim ~/.pip/pip.conf

填入:
[global]
trusted-host=mirrors.aliyun.com
index-url=http://mirrors.aliyun.com/pypi/simple

Изменить sources.list:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo vim /etc/apt/sources.list

填入:
# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse

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

Но, но, если скорость вашего интернета не превышает 10Кбит/с для скачивания некоторых пакетов, то вам стоит воспользоваться хитрой операцией. . . Потому что он будет зависать все время, как только сеть будет отключена, вам придется начинать снова.Сначала разберите, очистите, а затем сложите, что очень недружелюбно. Проблема в основном при загрузке репозитория git и некоторых пакетов. особенноnova horizonИ так далее, размер достиг 300+M.

Вот метод:
Идея состоит в том, чтобы использовать SSH на вашем иностранном VPS и загрузить ваш репозиторий git или другие файлы. Затем SCP на вашу виртуальную машину. Основная причина в том, что она не будет прервана, и это может быть многопоточная операция незаметно, открывающая несколько терминалов и SCP несколько файлов.
Взгляните на эффект сравнения скорости.
Скачать на виртуальную машину:


Скачать на VPS:

После этого вы можете сами SCP

sudo scp -P 10800 -r root@xx.xx.xx.xx:/fitzeng/horizon /etc/stack/

-r - это папка cp, затем порт, IP заполните самостоятельно, а затем каталог. Здесь он тоже может быть немного медленным, но он лучше и стабильнее, чем раньше.



Все эти операции происходят из дружественного механизма журнала.Глядя на изображение выше, мы можем узнать адрес загрузки и каталог хранения, поэтому есть больше способов узнать эти методы.
Скорость сети достаточно высока, и вы можете клонировать прямо локально.

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

2. Настольная версия Ubuntu

Основные шаги такие же, как и раньше.Проблема может быть в том, что вы ранее устанавливали на Ubuntu различный софт (я устанавливал метод ввода Sogou, источник fcitx в нем влияет на скорость, а иногда даже залипает напрямую), изменился Если если исходный код программного обеспечения или другие инструменты были изменены, можно протестировать в соответствии с предыдущей конфигурацией. Если вы уже устанавливали его на версию Ubuntu Server, вы можете напрямую передать файл SCP.Если виртуальные машины не могут взаимодействовать друг с другом, вы можете сначала передать SCP на хост-компьютер, а затем поделиться файлом с хост-компьютера на Ubuntu. Рабочий стол.
Затем вы можете запустить его, и это очень просто с предыдущим фондом.

Тогда смотрите напрямую увидеть результаты этого:




3. Постскриптум

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

Наконец:
Спасибо за чтение
Желаю тебе всего наилучшего ^_^