Re: vCD metering
Re: vCD metering
Sebastian,
I don't believe Anand and Dan went through these new features specifically in their session, but they do talk about the current state of vROps integration for vCD in this session -
VMworld On-Demand Video Library
Re: vCD metering
Wow guys!
I'm amazed at how fast I got a reaction to my post.
I wouldn't have figured there were too many people active on the communities with cloud provider type of knowledge. Keep it up!
First I will definitely check out the VMworld video on vROps integration for vCD. So thanks for that.
I'm a bit disappointed that vROps apparently is required for chargeback. The company I work for is a service provider that has a strong presence in education where focus on keeping costs down is a key concern. Or else the'll bring their VMs to Azure or some other mega cloud provider. As a result most of our customers make use of the VMware VCloud SP Advanced Bundle. This bundle has the best feature vs. costs balance. However it's missing vROps. To be honest I don't see chargeback manager or vRealize Business in the latest VCPP usage guide.
So as a follow-up question I'd love to hear what options are available from VMware if using vROPs integration for vCD is out of the question. Should I turn to a third party such as OnApp like SebastianGrugel does or even create my own solution?
Again, thanks for your reactions.
Rudolf
Ps. paluszekd will you by any chance be attending VMworld Europe? I'd love to have a chat if possible.
Re: vCD metering
Hi Rudolf,
I suggest speaking to your local VMware Cloud Provider team. Our goal is to include the vROps Chargeback into the 7 point bundle (this will be called the core flex bundle) - so there will not be any additional charge for Chargeback capabilities.
Yes, I will be at VMworld Europe, rkleijwegt
I look forward to meeting you!
-Daniel
Re: vCD metering
For the people that are also interested, skip to 16:50 for the good stuff.
Re: vCD metering
I'll definitely want to test the vROps Chargeback integration in vCD when it becomes available. If there is a beta program available anytime soon, I'd love to participate.
What I'm looking for in particular is an ability to get detailed metrics of all resources consumed within a vCD. Such as VMs (vCPU, memory, diskspace), Edges and Items stored in a catalog. The goal is not so much as to have a complete solution that can actually generate bills. But a single place that can produce the metrics so we can take those and store them in our own time series database such as InfluxDB.
This way we can take the metrics and create our own pricing policies and generate charges.
Is there any chance this is what's possible with the vROps Chargeback integration in vCD?
Re: vCD metering
Understand - I suggest reaching out to your local field team or aggregator to strike up this conversation. As for the metrics requested, I do not know that just yet. I will investigate when time permits. Thanks!
Re: vCD metering
Absolutely. I'll go ahead and reach out to our local VMware representatives.
Thanks a lot for your help Daniel!
Re: vCD metering
This has always been a problem...we've been down many roads (looked at OnApp, tried AirSembly) and generally wasted a lot of time. We currently have a developer looking at writing an app to pull the allocation data out via the API and apply calculations into our billing system.
Previously vRops has been far too expensive for us (as a smaller provider). I'll be watching this with interest.
vCD 9.1.0 adding to Cassandra DB additional metrics to collect performance data
Hello.
Im using vCD 9.1.0 and few days ago configured Cassandra 3 in our LAB.
I used for installation and integration:
http://www.vstellar.com/2017/01/08/learning-apache-cassandra-part-3-installing-cassandra-on-rhel6/
http://www.vstellar.com/2017/10/05/configuring-vcd-9-0-to-send-metric-data-to-cassandra-db/
https://anthonyspiteri.net/enabling-configuring-and-viewing-metrics-in-vcloud-director-9-0/
Combined those all docs and blogs and deployed 1 Centos node with cassandra.
After integration by default we have access only to 8 metrics (we can confirm this checking table in vCD DB and Cassandra DB or simpler login to tenant portal and check metrics):
cpu.usage.average
cpu.usage.maximum
cpu.usagemhz.average
disk.provisioned.latest
disk.read.average
disk.used.latest
disk.write.average
mem.usage.average
This is fine but what if we want to collect some additional metrics? For example, those metrics what have Tomas included in his article:
https://fojta.wordpress.com/2017/11/24/how-to-configure-additional-vm-metrics-in-vcloud-director/
mem.granted.average
mem.granted.maximum
I tried adding those metrics without success.
What i did:
1. Created file /tmp/metrics.groovy with content:
configuration {
metric("mem.granted.average")
metric("mem.granted.maximum")
}
2. Used command with success because new metric appeared in vCD DB (MSSQL)
$VCLOUD_HOME/bin/cell-management-tool configure-metrics –metrics-config /tmp/metrics.groovy
3. Used command (without success):
/opt/vmware/vcloud-director/bin/cell-management-tool cassandra –configure –cluster-nodes 192.x.x.x –username root –password "PASSWORD" –port 9042 –ttl 15 –update-schema
Verifying Cassandra settings...
Cassandra setting valid for node: 10.3.5.50
Cassandra configuration settings verified successfully
ERROR: Unable to update Cassandra schema
Unexpected error, exiting...
in cell-management-tool.log logs i found only:
2018-09-19 10:17:37,614 | DEBUG | main | EncryptionManager | EncryptionManager configured with system key. |
2018-09-19 10:17:37,704 | DEBUG | main | EncryptionManager | EncryptionManager has been loaded successfully. |
2018-09-19 10:17:42,991 | ERROR | main | ConfigureCassandraCommand | Cassandra configuration settings verified successfully |
2018-09-19 10:17:45,525 | ERROR | main | ConfigureCassandraCommand | Unexpected error, exiting... |
java.lang.Exception: Cannot find configured metrics in cassandra schema
at com.vmware.vcloud.cassandra.cmt.ConfigureCassandraCommand.getSchemaColumns(ConfigureCassandraCommand.java:333)
at com.vmware.vcloud.cassandra.cmt.ConfigureCassandraCommand.updateSchema(ConfigureCassandraCommand.java:266)
at com.vmware.vcloud.cassandra.cmt.ConfigureCassandraCommand.configure(ConfigureCassandraCommand.java:217)
at com.vmware.vcloud.cassandra.cmt.ConfigureCassandraCommand.executeCommand(ConfigureCassandraCommand.java:178)
at com.vmware.vcloud.cassandra.cmt.ConfigureCassandraCommand.executeCommand(ConfigureCassandraCommand.java:51)
at com.vmware.vcloud.common.cmt.HibernateBasedToolCommand.doCommandInternal(HibernateBasedToolCommand.java:43)
at com.vmware.vcloud.common.cmt.AbstractDatabaseToolCommand.doCommand(AbstractDatabaseToolCommand.java:87)
at com.vmware.vcloud.cell.management.internal.AbstractToolCommand.call(AbstractToolCommand.java:177)
at com.vmware.vcloud.cell.management.internal.AbstractToolCommand.call(AbstractToolCommand.java:37)
at com.vmware.vcloud.cell.management.CellManagementTool.start(CellManagementTool.java:299)
at com.vmware.vcloud.cell.management.CellManagementTool.main(CellManagementTool.java:215)
at com.vmware.vcloud.cell.management.CellManagementTool.main(CellManagementTool.java:228)
2018-09-19 10:17:45,540 | DEBUG | main | CellManagementTool | Exiting with completion code: OTHER |
Next step, in my troubleshoot I logged to Cassandra and logged direct to DB and used command "DESCRIBE SCHEMA" in tool "cqlsh":
Interesting output for us is list of existing in Cassandra metrics (what only confirmed error: "Cannot find configured metrics in cassandra schema" :
CREATE TABLE vcloud_metrics.vm_metrics (
vm_id text,
sample_time timestamp,
"cpu.usage.average" bigint,
"cpu.usage.average.instance" text,
"cpu.usage.average.unit" int,
"cpu.usage.maximum" bigint,
"cpu.usage.maximum.instance" text,
"cpu.usage.maximum.unit" int,
"cpu.usagemhz.average" bigint,
"cpu.usagemhz.average.instance" text,
"cpu.usagemhz.average.unit" int,
"disk.provisioned.latest" bigint,
"disk.provisioned.latest.instance" text,
"disk.provisioned.latest.unit" int,
"disk.read.average" bigint,
"disk.read.average.instance" text,
"disk.read.average.unit" int,
"disk.used.latest" bigint,
"disk.used.latest.instance" text,
"disk.used.latest.unit" int,
"disk.write.average" bigint,
"disk.write.average.instance" text,
"disk.write.average.unit" int,
"mem.usage.average" bigint,
"mem.usage.average.instance" text,
"mem.usage.average.unit" int,
org_id text,
vapp_id text,
vdc_id text,
PRIMARY KEY (vm_id, sample_time)
) WITH CLUSTERING ORDER BY (sample_time ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND crc_check_chance = 1.0
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99PERCENTILE';
Unfortunatelly i dont have nothing more. I performed some workaround which is looks like working but i think is destructive to historical data:
WORKAROUND:
Inspired by command from this article:
1.Use that same file /tmp/metrics.groovy with content
configuration {
metric("mem.granted.average")
metric("mem.granted.maximum")
}
2. Remove keyspace in Cassandra
"drop keyspace vcloud_metrics"
3. Used command which was used during integration CELLs with Cassandra (on begining) which create schema again:
"/opt/vmware/vcloud-director/bin/cell-management-tool cassandra -configure -create-schema -cluster-nodes 192.x.x.x -username root -password "xxxxxxxx" -port 9042 -ttl 15"
Results (additional metrics looks like are imported from file):
"Verifying Cassandra settings...
Cassandra setting valid for node: 10.3.5.50
Cassandra configuration settings verified successfully
vcloud_metrics keyspace created...
vm_metrics table created...
adding configured metrics to the schema...
adding counter: mem.granted.average
adding counter: mem.granted.maximum
adding counter: cpu.usage.average
adding counter: cpu.usage.maximum
adding counter: cpu.usagemhz.average
adding counter: disk.provisioned.latest
adding counter: disk.read.average
adding counter: disk.used.latest
adding counter: disk.write.average
adding counter: mem.usage.average
vapp_metrics table created...
vdc_metrics table created...
org_metrics table created...
Persisting Cassandra settings...
Success. The monitoring service is now configured to persist data into cassandra nodes(10.3.5.50), vCD cell(s) must be restarted if they are already running."
After restart CELLs looks OK:
In my opinion this is workaround which is not safe.... i think during removing KEYSPACE i removed some historical data...
Some suggestion why i cant update schema with new metrics ? by command:
/opt/vmware/vcloud-director/bin/cell-management-tool cassandra –configure –cluster-nodes 192.x.x.x –username root –password "PASSWORD" –port 9042 –ttl 15 –update-schema
or maybe im doing something wrong
Sebastian
www.vSebastian.net
Message was edited by: SebastianGrugel
vCD NTP Time
Our VMs within the vDCs are an hour ahead. NTP on ESXi hosts is correct. Is there a NTP time source I would need to change on the vCD cell at all? Where do the VMs get their time source from?
Re: vCD NTP Time
You’ll need to ensure the following is all set:
-vCenter
-ESXi Host
-Host BIOS
if running CentOS there is a separate NTP configuration required on each cell too.
Re: vCD NTP Time
Just to clarify , are you referring to workload VM's NTP configuration or VCD-Cell VM'S NTP configuration ? There is no direct mapping for NTP between VCD Cell VM and Virtual Machine . In both the case either we sync to ESXI host or prefer a native NTP configuration. When i say sync via ESXI host -> VMware Tools sets the time of the guest operating system to be the same as the time of the host , Native NTP configuration is -> Network Time Protocol (NTP) for Linux and the Mac OS X, or Microsoft Windows Time Service (Win32Time) for Windows
Re: vCloud director 9.1 new installation for production
Thanks so much Daniel.You helped me a lot.
I successfully installed vCloud director.
Created 2 Centos 7.0 Version VMs.
1st Centos-->Installed postgress DB for vCloud director.
2nd Centos-->Installed vCloud director software.
Downloaded and installed the NSX manager OVA and the same has been integrated with vCenter server.
I successfully logging in to vCloud director cloud as an administrator and attached vCenter/esxi hosts in to it. I have only few doubts left.Could you please clarify ??
In my vSphere environment,i have 5 VMs(vCenter server, vcloudDB,vClouddirector,NSX manager VM and vCloud DNS VM).
I could not see any VMs in vcloud director.It is showing as zero and what i need to do now to see all the VMs?
Thanks,
Manivel R
Re: vCloud director 9.1 new installation for production
Hi Manivel,
Did you follow the steps on the Home page?
Looks like you attached your vCenter, but you will need to create a provider VDC (think of this as the resources we will mount from a vCenter), an external network, network pool, then go into the tenant constructs - create an organization (tenant) and then attach resources via a organization VDC (resource that are carved from the provider VDC). From there, you will be able to create VMs inside of a tenant organization.
-Daniel
Re: vCloud director 9.1 new installation for production
Hi Daniel,
Thank you.Im fine to create a new VM.
What about existing VMs ? I mean those 5 VMs. I cant see those five VMs in vCloud director ??
Thanks,
Manivel R
Re: vCloud director 9.1 new installation for production
I see - not sure why you would want to manage NSX, vCD, Postgres VM's from vCD, but this would fall in the "Adopt a VM" vCD behavior - tfojta did a blog post here on this topic: vCloud Director 8.20: VM Auto-import – Tom Fojta's Blog
Re: vCloud director 9.1 new installation for production
Hi Daniel,
I thought all the running vsphere VMs will be visible after vcloud director installation(i mean when i connect and see the vcloud director via web).
I got it.
Thanks so much.Much appreciated.
Cheers,
Manivel R
Getting EGW Advanced Enabled Functionality through API
I was not sure if there is a functionality to cross post here in this forum. But I created the following question in the NSX forum and it might actually be a question for vCloud forum.
Getting EGW Advanced Enabled Functionality through API
I got vCloud 8.20 and want to know if the edge gateway has been enabled to use advanced features (that enables the HTML5 dashboard for configuration). In the database there is "advanced_gateway" true/false. So I guess there should be some way to get this information through the API, but I can't find it.
Requesting, through the REST API, /api/3.0/edges/status (or /summary) doesn't seem to yield any information regarding this activation.
Is it possible to get this information through the REST API?
And I just want to know the status of the EGW, if the advanced gateway features has been enabled or not. Is this possible through the vCloud REST API somehow?
Re: vCloud director 9.1 new installation for production
In our vCD we have dedicated resource cluster which is managed by vCD.
Management cluster where we have vCD, vCenter m NSX is not visible inside vCD.
Sebastian