NeutronCode

    def update_floatingip(self, context, id, floatingip):
        # TODO create metering label project_A_in_10.200.43.6/24_PORTID
        project_id = context.tenant_id
        port_id = floatingip['floatingip']['port_id']
        LOG.info("############TENANT_ID: %s ", project_id)
        LOG.info("############ID: %s ", id)
        LOG.info("############FLOATINGIP: %s ", floatingip)
        LOG.info("############PORTID: %s ", port_id)
        old_floatingip, floatingip = self._update_floatingip(
            context, id, floatingip)
        if port_id is not None:
            LOG.info("############NewFLOATINGIP: %s ", floatingip)
            floating_ip_address = floatingip['floating_ip_address']
            floating_ip_cidr = str(floating_ip_address) + '/32'
            meter_in_label_name = 'project_' + str(project_id) + '_in_' + \
                floating_ip_cidr + '_' + str(port_id)
            meter_out_label_name = 'project_' + str(project_id) + '_out_' + \
                floating_ip_cidr + '_' + str(port_id)
            LOG.info("########meter_in_label_name: %s ", meter_in_label_name)
            description = ""
            in_metering_label = {'metering_label': {
                                 'name': meter_in_label_name,
                                 'tenant_id': project_id,
                                 'shared': False,
                                 'description': description}}
            metering_labels = self.meteringplugin.get_metering_labels()
            LOG.info("######metering_labels: %s ", str(metering_labels))
            self.meteringplugin.create_metering_label(
                context, in_metering_label)
            LOG.info("######meter_out_label_name: %s ", meter_out_label_name)

        self._notify_floating_ip_change(context, old_floatingip)
        if (floatingip['router_id'] != old_floatingip['router_id'] or
                floatingip['port_id'] != old_floatingip['port_id'] or
                floatingip['qos_policy_id'] !=
                old_floatingip['qos_policy_id']):
            self._notify_floating_ip_change(context, floatingip)
        return floatingip
















ssh root@10.200.43.219 "mkdir -p /etc/kolla/neutron-metering-agent"
scp /root/deploy-i-stack/lib/neutron-metering-agent/*  root@10.200.43.219:/etc/kolla/neutron-metering-agent/
ssh root@10.200.43.219 "sh /etc/kolla/neutron-metering-agent/edit_neutron_config.sh"
ssh root@10.200.43.219 "cp /etc/kolla/neutron-server/neutron.conf /etc/kolla/neutron-metering-agent/"
ssh root@10.200.43.219 "sh /etc/kolla/neutron-metering-agent/neutron_metering_agent.sh 125.215.36.164:4000"




修改所有控制节点的ceilometer.conf配置文件,可在末尾添加配置。
[root@contrl01 ~]# vi /etc/kolla/ceilometer-notification/ceilometer.conf
[dispatcher_gnocchi]

# The archive policy to use when the dispatcher create a new metric. (string
# value)
archive_policy = medium

同样的方法修改如下配置
[root@contrl01 ~]# vi /etc/kolla/ceilometer-api/ceilometer.conf
[root@contrl01 ~]# vi /etc/kolla/ceilometer-central/ceilometer.conf

[root@contrl01 ~]# docker ps -a |grep ceilometer | awk '{print $1}' |xargs docker restart

配置meter_agent.ini
#push到message的间隔 单位 s
report_interval = 60 

docker exec -u root neutron_server cp /var/lib/kolla/venv/lib/python2.7/site-packages/neutron/services/metering/drivers/iptables/iptables_driver.py /var/lib/kolla/venv/lib/python2.7/site-packages/neutron/services/metering/drivers/iptables/iptables_driver.py_bak

docker cp /opt/iptables_driver.py neutron_server:/var/lib/kolla/venv/lib/python2.7/site-packages/neutron/services/metering/drivers/iptables/iptables_driver.py

docker restart neutron_server

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值