Can't upload files to Azure Storage using SSIS - azure

I want to upload image files from one of my local drives to my Azure storage container. I'm using the Azure Upload Task in SSIS.
It is connected to the azure storage container just fine, and I'm targeting a specific container and place the images into a directory. However, when I execute the task, it gives me the following error:
Error: 'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Unable to create Azure Blob container.
Error: Upload task has stopped with exception: Unable to create Azure Blob container.
Can anyone give me some help with this kind of problem? Thank you.

I had the same problem.
If the error message contains anything like this:
The TLS version of the connection is not permitted on this storage account
the solution is to downgrade the minimum TLS version on Azure Storage in the cloud or do something with the TLS version on your on premises machine. You can find this setting on Azure Storage Configuration.
Default TLS on Azure is Version 1.2
If you downgrade (not recommended) there is a degree of security risk you are taking.
Microsoft TLS documentation
After these changes I can upload files using Access Key method or SAS (shared access signature).

Related

Not able to upload files into Azure blob from Application

We have an issue where we are able to upload files into Azure blob storage from local code but not from the application as is hosted on IIS inside EC2 instance .. Any idea as to what can be the possible reasons .
There are some possible reasons for the issue in uploading files into Azure blob from application.
You can try with below points that might fix your issues:
In azure portal check the configuration of the storage whether it is correct version for storage client. Nowadays the latest TLS version is 1.2 .
If it is required lower version you can change by below:
Go to Azure portal->storage->Configuration->Minimum TLS version.
check with server which IIS is installed once. It might be some issues accessing the internet from that server.
Also check with Firewall in your system that allows the connection (protocol, host & port).
If TLS 1.2 is enabled check server with registry keys. if there is need to be added try to add the changes in registry keys.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols.
Reference: You can refer the blow links for troubleshooting.
SO thread
Error-while-uploading-the-files-to-azure

Copy Azure blob to local machine as soon as blob is created

I'm trying to create a Windows service that will detect when a new blob is uploaded to a certain container on Azure and download them onto the local machine immediately. I know I can have a blob trigger running locally but there doesn't seem to be any way to put this into a service. Does anyone have any ideas?
You should be able to do this with using the standard WebJobs SDK with a blob trigger, but running as a service instead of a console app.
You can find more information about using the blob trigger with the SDK directly here: https://github.com/Azure/azure-webjobs-sdk/wiki/Blobs

Upload to blob tfs 2017

We are trying to upload the artifact to blob storage from TFS build server. AzCopy task needs the azure subscription details, which is not available to us. We need to upload the artifacts to azure blob storage using azure blob storage connection string. Is there a way to upload files to blob storage using connection string only.
Anything you can do from PowerShell you can do from build and release. There is a task named "PowerShell" and one named "Azure PowerShell". If you don't have the Azure subscription details I doubt you will be able to use the "Azure PowerShell" task. However, if you have a PowerShell script you run locally that works you might be able to simply run it as part of your build with the "PowerShell" task.
Option two is have someone that knows the details to create an Azure Service Endpoint for you. They never have to share the details with you to make the connection. Once the connection is created you can use it without having to ever know the details.

Unable to locate Blob Storage in local Development using Azure Storage Explorer

I installed azure storage emulator in devBox as an service and it runs under system. I also replaced IP address of blob storage from 127.0.0.1:10000 to devBox IP address. Everything is running perfect. But I am unable to find blob file location in my devBox. I installed Azure Storage Explorer as well. Using developent Account Name and Key,I tried to connect my blob storage but it doesn't work. Even in other field as custom End point, I provided devBox IP address but not getting blob storage folder. Can anyone please help me to find file location of blob storage?
Thanks in advance.
As far as I know, the storage emulator uses a local Microsoft SQL Server instance and the local file system to emulate the Azure storage services. By default, the storage emulator uses a database in Microsoft SQL Server 2012 Express LocalDB.
I suggest you could install SQL Server Management Studio Express to manage your LocalDB installation. The storage emulator connects to SQL Server or LocalDB using Windows authentication.
Link: https://www.microsoft.com/en-us/download/details.aspx?id=29062
You could find the AzureStorageEmulatorDb as below image shows:
Then you could select the BlockData table(If you store the file as blockblob).
In the result’s FilePath column you will find the file location.

Client-Side: Accessing Windows Azure Drive?

I am developing an Azure application, part of which involves users browsing an online filesystem. TO do this, I am trying to use the Windows Azure drive, but I can't figure out how to access it from client side, or how to make it accessible on the server side.
At the moment, I only know how to make the drive:
CloudStorageAccount devStorage = CloudStorageAccount.DevelopmentStorageAccount;
CloudBlobClient client = devStorage.CreateCloudBlobClient();
CloudBlobContainer container = new CloudBlobContainer("teacher", client);
CloudDrive.InitializeCache(localCache.RootPath,
localCache.MaximumSizeInMegabytes);
CloudDrive drive = new CloudDrive(container.GetPageBlobReference("drive1").Uri, devStorage.Credentials);
drive.Create(50);
I am using C# as my development language.
All help is greatly appreciated!
There are couple of things you need to understand with Windows Azure Cloud Drive:
Cloud drives are actual Page Blobs which are stored on Windows Azure Blob storage and mount as a drive (you will get a drive letter depend on your machine drive statistics) in a machine where you can provide Windows Azure Run time environment.
Programmatic it is very easy to mount a cloud drive in your code as you showed in your example however one thing is missed that is to be sure to have Windows Azure RunTime environment where this code can run.
I have written a utility to mount azure drive within Windows Azure VM (Web, Worker or VM Role) located here:
http://mountvhdazurevm.codeplex.com/
You can run above tool directly in Windows Azure VM and can also this the exact same code in your Compute Emulator (Windows Azure Development Fabric) so the bottom line is as long as you can provide Windows Azure Runtime environment, you can mount a Page blob VHD drive.
I have seen several cases where someone asked me to mount a Windows Azure Page Blob as drive in local machine (client and server, anywhere) and the actual hurdle was to bring Windows Azure Run time in local environment because it is not available. In some cases a few person went ahead and tries to use Windows Azure SDK to have Windows Azure runtime made
available in their desktop, created a dummy web role and then mount the VHD which was mounted in local machine and a drive letter was made available as well. I am not sure about such kind of solution because this is not Windows Azure compute emulator is designed.
Hope this description provide you some guideline.
I'm not sure I understand your question properly, but it sounds like you want multiple client applications - presumably on machines that are not on Azure - to access your Azure drive?
Unfortunately, Azure drives can only be accessed from Azure web/worker or VM role instances.
I've written a WebDAV Server which runs on an Azure Website which will allow clients, including Windows Explorer and Office to connect to Azure Storage. It uses a combination of Table and Blob Storage to store the file structure and files. I've tested it with Windows Explorer and Word 2013. Although this isn't a clouddrive solution it's still using Azure Storage as a backend and it's accessible from WebDAV clients. You might find it useful..
https://github.com/ichivers/AzureDAV
One additional point to the existing answers. You can always download the blob backing your Cloud Drive and mount it on a local system. The blob is really just a VHD. However, the download time isn't going to trivial unless the drive is small.
Erick

Resources