如图,用命令nova image-list 时出现http 400错误,图是调试的输出

解决方案 »

  1.   

    susesp2:~/key # nova image-list
    ERROR: n/a (HTTP 400)
    解决方法:
    susesp2:~ # zypper search nova-api
    Loading repository data…
    Reading installed packages…
    S | Name               | Summary                        | Type
    –+——————–+——————————–+——–
    | openstack-nova-api | OpenStack Compute API services | package
    susesp2:~ # zypper install openstack-nova-api
    其它问题引起的http 400错误,novarc环境变量写错,这点很重要:
    suse11sp2:~/user # cat novarc
    NOVARC=$(readlink -f “${BASH_SOURCE:-${0}}” 2>/dev/null) ||
    NOVARC=$(python -c ‘import os,sys; print os.path.abspath(os.path.realpath(sys.argv[1]))’ “${BASH_SOURCE:-${0}}”)
    NOVA_KEY_DIR=${NOVARC%/*}
    export EC2_ACCESS_KEY=”kevin:mycloud”
    export EC2_SECRET_KEY=”f20bb381-9cbf-40a7-a84f-499b815efa19″
    export EC2_URL=”http://192.168.1.76:8773/services/Cloud”
    export S3_URL=”http://192.168.1.76:3333″
    export EC2_USER_ID=42 # nova does not use user id, but bundling requires it
    export EC2_PRIVATE_KEY=${NOVA_KEY_DIR}/pk.pem
    export EC2_CERT=${NOVA_KEY_DIR}/cert.pem
    export NOVA_CERT=${NOVA_KEY_DIR}/cacert.pem
    export EUCALYPTUS_CERT=${NOVA_CERT} # euca-bundle-image seems to require this set
    alias ec2-bundle-image=”ec2-bundle-image –cert ${EC2_CERT} –privatekey ${EC2_PRIVATE_KEY} –user 42 –ec2cert ${NOVA_CERT}”
    alias ec2-upload-bundle=”ec2-upload-bundle -a ${EC2_ACCESS_KEY} -s ${EC2_SECRET_KEY} –url ${S3_URL} –ec2cert ${NOVA_CERT}”
    export NOVA_API_KEY=”kevin”
    export NOVA_USERNAME=”kevin”
    export NOVA_PROJECT_ID=”mycloud”
    export NOVA_URL=”http://192.168.1.76:8774/v1.1/”
    export NOVA_VERSION=”1.1″万事尙用Google 
    解决方法出自此处:http://blog.csdn.net/blueorb/article/details/7831493