Aws-lambda-dotnet: Kesalahan: Bucket S3 harus berada di wilayah yang sama dengan wilayah yang dikonfigurasi us-west-2. berada di wilayah us-timur-1.

Dibuat pada 17 Jan 2018  ·  7Komentar  ·  Sumber: aws/aws-lambda-dotnet

  • Saya membuat proyek baru menggunakan dotnet new , dengan template AWS Serverless WebAPI (ASP.NET Core 2.0). Ini termasuk kode sampel ValuesController dan S3ProxyController.
  • Wilayah utama saya adalah us-west-2 jadi saya melakukan find-replace untuk mengubah wilayah di semua file .appsettings .
  • Saya juga menjalankan aws configure untuk mengatur ID Kunci profil default saya, Kunci Akses, dan Wilayah ke aws-west-2.

Setelah semua ini, saya menjalankan dotnet lambda deploy-serverless dan mencoba menggunakan us-east-1 . Apakah ini masalah dengan template atau AWS CLI?

Error: S3 bucket must be in the same region as the configured region us-west-2. is in the region us-east-1.

Komentar yang paling membantu

Masih ada masalah di mana ember S3 yang berisi file zip Anda dengan paket lambda Anda harus berada di wilayah yang sama dengan tempat fungsi lambda Anda dibuat. Ini kontra intuitif dan menurut saya, mengerikan. Jika kita ingin memanfaatkan template yang sama di beberapa wilayah, kita perlu menduplikasi konten paket di beberapa ember. Mereka setidaknya dapat menerima URL di properti CodeUri sehingga kami dapat menggunakan ember publik atau github untuk menyimpan paket .

Serius, ini mengerikan. Apa gunanya ember s3 global ketika Anda tidak dapat mendukung pembaruan kode fungsi lambda dari satu ember s3 daripada membuat ember duplikat di setiap wilayah.

Semua 7 komentar

Saya mengunggah serverless.template dihasilkan oleh dotnet baru ke AWS dan mendapatkan kesalahan berikut saat mencoba membuat tumpukan darinya:

Error creating change set: Transform AWS::Serverless-2016-10-31 failed with: Invalid Serverless Application Specification document. Number of errors found: 1. Resource with id [ProxyFunction] is invalid. 'CodeUri' is not a valid S3 Uri of the form "s3://bucket/key" with optional versionId query parameter.

Sepertinya ada yang salah dengan templatenya. Saya tidak punya banyak pengalaman dengan CloudFormation, masih menyelidiki.

Hari ini saya membuat beberapa kemajuan dengan akhirnya memahami pesan kesalahan :)

Sumber daya "ProxyFunction" di templat pembentukan awan memiliki parameter CodeUri disetel ke string kosong. Melanjutkan penyelidikan mengapa string kosong tidak didukung di sana.

Rupanya CodeUri dapat berupa relatif, parameter dinamis, atau URL statis tetapi tidak pernah berupa string kosong.

https://github.com/awslabs/serverless-application-model/blob/master/HOWTO.md

Apakah Anda memiliki halaman di mana Anda mengatakan CodeUri perlu diganti dengan sesuatu? Perbaikan termurah adalah memasukkannya sebagai parameter, maka Anda tidak perlu mendokumentasikannya.

Sepertinya semuanya berfungsi, itu membingungkan karena ada dua ember S3 yang terlibat, ember proxy dan ember tempat kode fungsi lambda diunggah. Setelah saya membuat bucket untuk lambda dan menentukan namanya, dan juga menentukan nama unik untuk bucket proxy yang tidak digunakan, transformasi tanpa sever dalam formasi cloud berhasil.

Masih ada masalah di mana ember S3 yang berisi file zip Anda dengan paket lambda Anda harus berada di wilayah yang sama dengan tempat fungsi lambda Anda dibuat. Ini kontra intuitif dan menurut saya, mengerikan. Jika kita ingin memanfaatkan template yang sama di beberapa wilayah, kita perlu menduplikasi konten paket di beberapa ember. Mereka setidaknya dapat menerima URL di properti CodeUri sehingga kami dapat menggunakan ember publik atau github untuk menyimpan paket .

Untuk itu sebaiknya Anda memberikan masukan kepada tim CloudFormation . Adalah di luar cakupan repositori ini untuk mengubah perilaku CloudFormation.

Masih ada masalah di mana ember S3 yang berisi file zip Anda dengan paket lambda Anda harus berada di wilayah yang sama dengan tempat fungsi lambda Anda dibuat. Ini kontra intuitif dan menurut saya, mengerikan. Jika kita ingin memanfaatkan template yang sama di beberapa wilayah, kita perlu menduplikasi konten paket di beberapa ember. Mereka setidaknya dapat menerima URL di properti CodeUri sehingga kami dapat menggunakan ember publik atau github untuk menyimpan paket .

Serius, ini mengerikan. Apa gunanya ember s3 global ketika Anda tidak dapat mendukung pembaruan kode fungsi lambda dari satu ember s3 daripada membuat ember duplikat di setiap wilayah.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat