kolla-ansible 部署完后没有生成 admin-openrc.sh,通常是因为最后一步 post-deploy 没执行。
在 kolla-ansible 的流程里,环境变量文件是在这一步生成的:
kolla-ansible post-deploy
它会在 /etc/kolla/ 下生成:
/etc/kolla/admin-openrc.sh/etc/kolla/public-openrc.sh切到你的 kolla-ansible 控制节点,执行:
cd /etc/kolla
kolla-ansible post-deploy
执行成功后,就会看到 admin-openrc.sh。
然后加载:
source /etc/kolla/admin-openrc.sh
openstack service list
如果你懒得跑 post-deploy,也可以手工写一个 admin-openrc.sh:
cat > /etc/kolla/admin-openrc.sh <<EOF
export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=你的admin密码
export OS_AUTH_URL=http://<controller节点IP>:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
EOF
admin密码可以用以下方式获取:
cat /etc/kolla/passwords.yml |grep keystone_admin_password
然后 source /etc/kolla/admin-openrc.sh 就行了。