自分の仕事の連絡先は(三鷹)OpenStackのであるため、それが学ぶためのテスト環境をセットアップします。
まず展開は、間違っている場合は、私に神の偉大なメッセージを修正してください!
この記事では、初めて展開インストール初心者用で、リーチと感じ恐怖のうち、非常に大きなOpenStackのはないと思います!
インストールマニュアル、オープンソースコミュニティ(https://docs.openstack.org/zh_CN/)を見てみましょう、ノートPC 8Gのメモリを使用して、実験を開始することができます!
私のラップトップの構成は低いです。
ThinkPadのウィング480 i5-8250U 8Gメモリ256G SSD + 500G SSD(スターターT480、水ああのT480心!)
VM 15は、2台の仮想マシンを開きます
オペレーティングシステム:CentOSの7.3(1611)
制御ノード:メモリ4G、ハードディスク100Gは、(もつれハードディスクのサイズに、そんなに実際には数十GBを取らないではありません!)
計算ノード:メモリ2Gは、ハードディスク100Gは - 制御サービスを除いて、他のサービスは、このノードにインストールされています
ネットワーク計画は:VMコントローラカード3つのノードに割り当てられています:
1、唯一のホストモード:111.111.111.0/24 - ネットワーク管理
2、カスタムVMnet2モード:192.168.111.0/24 --providerネットワーク
yumの送信元アドレス:
http://vault.centos.org/centos/7.3.1611/cloud/x86_64/openstack-mitaka 869 + 1200common
http://vault.centos.org/centos/7.3.1611/extras/x86_64 451
http://vault.centos.org/centos/7.3.1611/virt/x86_64/kvm-common 89
http://vault.centos.org/centos/7.3.1611/storage/x86_64/ceph-hammer 71
http://vault.centos.org/centos/7.3.1611/os/x86_64/Packages/
有几个python包,是从https://pkgs.org/ 站点下载。
1、基础环境准备
配置范围:所有节点
1.1、配置host文件
111.111.111.201 controller
111.111.111.202 computer01
1.2、配置本地yum源
我已经将安装包都下载到了本地,所以使用离线yum源安装
同时将离线包所在目录做成web站点,这样计算节点可以直接配置http的yum源
1.3、安装时间同步服务
安装范围:所有节点
1.3.1、安装chrony包
# yum install chrony -y
1.3.2、启动同步服务
# systemctl enable chronyd
# systemctl restart chronyd
# systemctl status chronyd
1.3.3、防火墙设置
第一次部署,关闭防火墙和selinux
1.3.4、配置Chrony
# vi /etc/chrony.conf
如上图所示,将默认的server全部注释掉,然后添加本机IP,在其他客户机也是这样配置
为了允许其他节点可以连接到控制节点的 chrony 后台进程,在``/etc/chrony.conf`` 文件添加下面的键:
allow 111.111.111.0/24
启动 NTP 服务并将其配置为随系统启动:
# systemctl enable chronyd.service
# systemctl start chronyd.service
1.4、安装openstack最新的源
安装范围:所有节点
yum install centos-release-openstack-mitaka
yum install https://rdoproject.org/repos/rdo-release.rpm ---本次操作不能执行这一步,否则新增的repo文件指向的是T版本的openstack
yum upgrade (更新源) --本步骤需要先移除预装的mariadb的包,否则报错 :yum remove mariadb-libs
yum install python-openstackclient(安装opentack必须的插件)
yum install openstack-selinux(可选则安装这个插件,我直接关闭了selinux,因为不熟,对后续不会有影响)
说明:如果使用自定义源,那么上面centos和redhat的操作可以省略
1.5、部署mariadb数据库
控制节点:
安装报错,经查资料怀疑是自带的Mariadb干扰了
如图查到了自带的mariadb包,全部移除
# yum remove mariadb* -y
yum install mariadb mariadb-server python2-PyMySQL -y
编辑:
vi /etc/my.cnf.d/openstack.cnf
[mysqld]
bind-address = 111.111.111.201
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
启服务:
# systemctl enable mariadb
# systemctl start mariadb
# systemctl status mariadb
mysql_secure_installation
先是设置密码,会提示先输入密码
Enter current password for root (enter for none): <–初次运行直接回车
设置密码 : P@ssw0rd
Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码
其他配置
Remove anonymous users? [Y/n] <– 是否删除匿名用户,Y,回车
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,N,回车,
Remove test database and access to it? [Y/n] <– 是否删除test数据库,n,回车
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车
初始化MariaDB完成
1.6、为Telemetry 服务部署MongoDB
控制节点:
# yum install mongodb-server mongodb -y
编辑:vi /etc/mongod.conf
bind_ip = 111.111.111.201
smallfiles = true
启动服务:
# systemctl enable mongod
# systemctl start mongod
1.7、部署消息队列rabbitmq
控制节点:
# yum install rabbitmq-server -y
启动服务:
# systemctl enable rabbitmq-server
# systemctl start rabbitmq-server
新建rabbitmq用户密码:
# rabbitmqctl add_user openstack P@ssw0rd
删除了guest用户:
# rabbitmqctl delete_user guest
为新建的用户openstack设定权限:
rabbitmqctl set_permissions openstack ".*" ".*" ".*"
启动管理WEB
RabbitMQの-プラグインはrabbitmq_managementを有効にします
(認証します。http://111.111.111.201:15672 /ユーザー:OpenStackのパスワード:P @ ssw0rd)
しかし、赤のボックスに示すように着地の失敗:ログインに失敗しました
なぜ?それは、管理者ではありませんので!!
rabbitmqctl set_user_tags OpenStackの管理者
OpenStackのユーザーを追加するには、以下に示すように、成功を着陸した後、管理者です!
1.8、memcachedのキャッシュを展開(キャッシュはキーストンサービストークンです)
制御ノード:
#yumをmemcachedののpython-memcachedを-yをインストール
猫の/ etc /のsysconfig / memcachedの
PORT = "11211"
USER = "memcachedを"
MAXCONN = "10240"
CACHESIZE = "64"
#OPTIONS = " - L 127.0.0.1、:: 1"
OPTIONS = " - L 0.0.0.0"
質問:このステップは、公式ドキュメント[オプションの変更]オプションで、デフォルトはラインでされていません127.0.0.1
サービスを開始します。
#systemctlは、memcachedを有効に
#systemctlは、memcachedを開始します
基本的な環境準備を!