I've been trying for a few days now to use Cloudant as my Watson IoT Platform´s Historian service, but still no success.
I've finally managed to connect them with help I got here: Can't connect Watson IoT Platform to Cloudant, so I was able to set the bucket interval, and so on.
But though I can see them as connected in each "Connections" tab, no databases were created, and I can´t see Cloudant when I'm setting up my board Card.
When I get to the Extensions page on WIoTP and click on the gear button it appears to be stuck in a "binding" state as displayed in this screenshot.
Can anyone put a light in this?
Thanks!
Related
I am trying to import a cloud-enabled Debian Linux image for the Power architecture to run on the IBM public cloud, which supports this architecture.
I think I am following the instructions, but the behavior I am seeing is that, at image-import-time, after filling in all the relevant information, when I hit the "import" button, the GUI just exits silently, with no apparent effect, and no reported error.
I am reasonably experienced doing simple iaas stuff on AWS, but am new to the IBM cloud, and have not deployed a custom image on any cloud provider. I'm aware of "cloud-init", and have a reasonable general knowledge of what problem it solves (mapping cloud-provider metadata to config entries in the resulting VM at start-time), but not a great deal about how it actually works.
What I have done is:
Got an IBM cloud account, and upgraded out of the free tier, for access to Power.
Activated the Power Systems Virtual Server service.
Activated the Cloud Object Storage service.
Created a bucket in the COS.
Created an HMAC-enabled service credential for this bucket.
Uploaded my image, in .tar.gz format, to the bucket (via the CLI, it's too big to upload by GUI).
The image is from here -- that page is a bit vague on which cloud providers it may be expected to work with, but AFAIK the IBM cloud is the only public cloud supporting Power?
Then, from the Power Systems Virtual Server service page, I clicked the "Boot Images" item on the left, to show the empty list, then "Import Image" at the top of the list, and filled in the form. I have answers for all of the entries -- I can make up a new name, I know the region of my COS, the image file name" (the "key", in key-object storage parlance), the bucket name, and the access key and secret keys, which are available from the credential description in the COS panel.
Then the "import" button lights up, and I click it, and the import dialog disappears, no error is reported, and no image is imported.
There are various things that might be wrong that I'm not sure how to investigate.
It's possible the credential is not connected to the bucket in the right way, I didn't really understand the documentation about that, but in the GUI it looks like it's in the right scope and has the right data in it.
It's also possible that only certain types of images are allowed, and my image is failing some kind of validation check, but in that case I would expect an error message?
I have found the image-importing instructions for the non-Power-IAAS, but it seems like it's out of scope. I have also found some docs on how to prepare a custom image, but they also seem to be non-Power-IAAS.
What's the right way to do this?
Edit to add: Also tried doing this via the CLI ("ibmcloud pi image-import"), where it gets a time-out, apparently on the endpoint that's supposed to receive the image. Also, the command-line tool has an --os-type flag that apparently only takes [aix | sles | redhat | ibmi] -- my first attempt used raw, which is an error.
This is perhaps additional evidence that what I want to do is actually impossible?
PowerVS supports only .ova images. Those are not the same supported by VMWare, for instance.
You can get from here https://public.dhe.ibm.com/software/server/powervs/images/
Or you can use the images available in the regional pool of images:
ibmcloud pi image-list-catalog
Once you have your first VM up and running you can use https://github.com/ppc64le-cloud/pvsadm to create a new .ova. Today the tool only supports RHEL, CentOS and CoreOS.
If you want to easily play with PowerVS you can also use https://github.com/rpsene/powervs-actions.
(See picture)
I have successfully connected my iOT device to the BlueMix IoT platform
I can see all the events nicely flowing into the dashboard
I now enabled the extension in BlueMix IoT to store all data in "Historical Data Storage" (refer to https://developer.ibm.com/recipes/tutorials/cloudant-nosql-db-as-historian-data-storage-for-ibm-watson-iot-parti/#r_step3)
I can see the data correctly being written in the database
When I put a line graph on the dashboard in BlueMix IoT it does show a graph but only for the realtime data, it seams its not using the historical data now stored in the database. (refer to https://developer.ibm.com/recipes/tutorials/cloudant-nosql-db-as-historian-data-storage-for-ibm-watson-iot-partiii/)
After being in contact with IBM using Skype with screen sharing we found the solution.
Turns out that I did not enter an event in the cards config; I only entered a property and for some reason this is ok for realtime data but not for fetching the historical data out of the DB!
As soon as I entered my event (In my case it was 'status' but this should match your MQTT event name specifically) al worked ok!
Can you confirm per the details in the recipe - https://developer.ibm.com/recipes/tutorials/cloudant-nosql-db-as-historian-data-storage-for-ibm-watson-iot-partiii/, that your Window Size was configured while creating line chart card to display the data for the time period it was gathered in the database?
For example, Data from Last 24 Hours, in this case, window size is 24 Hours and we should see the data from historian only for last 24 Hours not beyond that whether data is in real time / data is stored in historian.
Be sure the window size configured for your chart encompasses the historical time for when you expected to see data.
I tried to connect AppMaker to an existing Google SQL database without success. In Google Cloud, I created a second generation instance (europe-west1) and allow every IP (for the test). Next, I created a user, connected Workbench with the database and created a schema. Without problems.
In AppMaker I use the following address to connect to the database:
[domainName:]myprojectID:regionName:myinstanceID/mydatabase
(with and without domain)
Feedback:
Unable to connect to Google Cloud SQL instance.
The Google Cloud SQL address may be incorrect or this App Maker editor may not have permission to access the database. You can find more information about using Google Cloud SQL in our documentation.
How can I connect to Google SQL with AppMaker?
Thanks.
The process I followed to connect to the database is the following:
Create a second generation instance by following the steps here (Please make sure to follow the steps only for "Create a Cloud SQL instance" and then create a database inside that instance)
Now, go to the IAM & ADMIN section of your project. Click on the blue "add" member option on the top. Type "appmaker-maestro#appspot.gserviceaccount.com" on the "Members" field and from the "Roles" dropdown select Project->Editor
Return to your second generation SQL instance and copy the value of the Instance connection name property of your instance. Example:
Follow the steps for second generation found here to connect to the database from AppMaker and when asked for the instance address, type the value you copied on the previous step and add /yourdatabase at the end of it. For example: my-foto-app:us-central1:myinstance/userphotodatabase
You should now be asked to enter the user and password. Do so and you are finished.
Please note that I haven't tested out this with a europe location but only on a us central location. I hope this helps and works!
Second generation instances are not yet supported by App Maker, switch to first generation and it will work.
FYI, 2nd gen Cloud SQL is supported bv App Maker and has been for awhile.
As of today, Postgre is not yet supported.
I've created a bluemix application that is using Node-RED to process my IoT sensors and I'm trying to use Freeboard as a dashboard. Only problem is the "Save Freeboard" button does nothing.
Any insight on how to fix this?
Where does Freeboard save it's data to? Is it backed by the filesystem or a database?
I'm not sure if Bluemix apps can save things to the "local" filesystem (and if it did it would not survive a app restart) and needs to use a database to store data.
Node-RED uses a CloudantDB instance to store flows and credentials.
If you are hosting your own freeboard, check the browser console for errors, by default what freeboard does is it tries download the JSON file with the layout to your computer when you click on "Save Freeboard".
Latest version will give you an option to save 'Minified' or 'Pretty' version of the JSON file.
Probably due to you fixing it but it seems to be working alright. Just make sure you actually use the url you get when saving or it won't load the saved json.
http://iotlabstart.mybluemix.net/freeboard/#start-73622
Edit: and make sure you're actually clicking either "pretty" or "minified" after "save".
I am attempting to setup a rails 3.2 app on Google compute engine, not app engine. I want to use Google cloud sql. When reading the docs I know I need to assign access ips, however the ability to do that is no where to be found. I can allow app engine applications, but not an ip.
The edit menu in the console doesn't seem to have what I need even though the docs point me there.
Has anyone done this? Where and how do you assign an ip to your Google cloud sql instance?
Go to https://console.developers.google.com/project
Choose your project and click it's name
Click cloud SQL on the left side menu
Choose the instance ID you wish to assign an ip to and click it's name
Click edit
Scroll down past 'Resources and Billing'. Just below 'Options' is an 'Assign IP Address' section