openstack前置安装与问题记录
安装openstack
下图显示了 OpenStack 服务之间的关系:
逻辑架构:
前置环境安装:
官方文档网址:https://docs.openstack.org/zh_CN/
1. 配置域名解析:
控制器节点 controller.
计算节点 compute1
块存储 block1
对象存储 object1
2. 安装ntp时间同步服务(无外网环境):
apt-get install chrony
配置控制节点
Vim /etc/chrony/chrony.conf
server NTP_SERVER iburst
allow 172.18.0.0/24 #允许其他节点能够连接到控制器的守护程序
systemctl restall chrony
其他几点配置:
apt-get install chrony
vim /etc/chrony/chrony.conf
server controller iburst #同步控制器时间
systemctl restart chrony
systemctl enable chrony
验证ntp同步:
Chrony sources
3. 归档启用,需要再所有节点上完成:
Nova-compute
管理虚机的核心服务,通过调用 Hypervisor API 实现虚机生命周期管理
https://docs.openstack.org/install-guide/environment-packages-ubuntu.html
用于 Ubuntu 20.04 LTS 的 OpenStack Wallaby:
add-apt-repository cloud-archive:wallaby
安装:
apt install nova-compute
4. 安装memcached并配置以允许其他节点通过管理网络访问:
apt install memcached python-memcache
vim /etc/memcached.conf
-1 172.18.0.0/2(管理端ip)
Systemctl restart memcached
5. Etcd OpenStack 服务可以使用 Etcd,这是一种分布式可靠键值存储,用于分布式键锁定、存储配置、跟踪服务活动性和其他场景。
apt install etcd
vim /etc/default/etcd
编辑/etc/default/etcd文件并将ETCD_INITIAL_CLUSTER, ETCD_INITIAL_ADVERTISE_PEER_URLS, ETCD_ADVERTISE_CLIENT_URLS, 设置ETCD_LISTEN_CLIENT_URLS为控制器节点的管理 IP 地址,以允许其他节点通过管理网络访问:
TCD_NAME="controller"
ETCD_DATA_DIR="/var/lib/etcd"
ETCD_INITIAL_CLUSTER_STATE="new"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01"
ETCD_INITIAL_CLUSTER="controller=http://10.0.0.11:2380"
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://10.0.0.11:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://10.0.0.11:2379"
ETCD_LISTEN_PEER_URLS="http://0.0.0.0:2380"
ETCD_LISTEN_CLIENT_URLS="http://10.0.0.11:2379
问题:
- 清除已启用节点,openstack compute service list --service nova-compute 查看到有已经不使用节点,需在数据库中清除
a) 查看僵尸节点select uuid,host from nova.compute_nodes where host='yulore1';
i. 删除nova库中compute表中僵尸进程的数据
ii. 删除nova库中services表中僵尸进程数据
- 控制节点同时作为计算节点需要配置nova.conf中添加
a) 在[vnc]部分中启用远程控制台访问:
enabled = true
server_listen = 0.0.0.0
server_proxyclient_address = $my_ip
novncproxy_base_url = http://controller:6080/vnc_auto.html
- Openstack安装好后无法登录,提示认证失败
a) 需要修改vim /etc/openstack-dashboard/local_settings.py
i. #OPENSTACK_KEYSTONE_URL = "http://%s/identity/v3" % OPENSTACK_HOST
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
修改此条可以正常登录
由于公司打算从cloudstack平台更换为openstack,所以遇到的问题后面会更新。安装各个组件的没有写,安装各个组件还是手动去官网安装一遍的好一些