タグ付けされた質問 「amazon-web-services」

アマゾンウェブサービス(AWS)はパブリッククラウドです。アマゾンが提供するIaaS(サービスとしてのインフラストラクチャ)およびSaaS(サービスとしてのソフトウェア)です。プログラミングとアーキテクチャに関する質問がトピックにあります。サーバーの一般的なヘルプは、https://serverfault.comで入手できます。AWSタグが単独で使用されることはめったになく、通常、質問のトピックをより明確に定義するために他のタグとともに使用されます。

14
S3バケットからすべてのファイルをダウンロードするBoto3
boto3を使用してs3バケットからファイルを取得しています。私はのような同様の機能が必要ですaws s3 sync 私の現在のコードは #!/usr/bin/python import boto3 s3=boto3.client('s3') list=s3.list_objects(Bucket='my_bucket_name')['Contents'] for key in list: s3.download_file('my_bucket_name', key['Key'], key['Key']) バケットにファイルしかない限り、これは正常に機能しています。バケット内にフォルダが存在する場合、エラーがスローされます Traceback (most recent call last): File "./test", line 6, in <module> s3.download_file('my_bucket_name', key['Key'], key['Key']) File "/usr/local/lib/python2.7/dist-packages/boto3/s3/inject.py", line 58, in download_file extra_args=ExtraArgs, callback=Callback) File "/usr/local/lib/python2.7/dist-packages/boto3/s3/transfer.py", line 651, in download_file extra_args, callback) File "/usr/local/lib/python2.7/dist-packages/boto3/s3/transfer.py", line …

10
強制ダウンロードの代わりにAWSS3ディスプレイファイルをインライン
何らかの理由で、S3バケット内のファイルがインラインで表示されるのではなくダウンロードとして強制されているため、画像リンクをコピーしてアドレスバーに貼り付けてから移動すると、ブラウザーがダウンロードするように促されます。代わりに、実際に開いている画像をクリックしてURLに移動する必要があります。 S3からファイルを提供する方法を変更する方法

4
Amazon AWS DynamoDBデスクトップクライアント-存在しますか?[閉まっている]
閉まっている。この質問は、StackOverflowのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、スタックオーバーフローのトピックになります。 5年前に閉鎖されました。 この質問を改善する これらの1つをWebで探していましたが、node.js / ruby​​でホストされている実装しか見つかりません。 すぐに実行できるように、msiインストーラーに付属しているnavicatilkのようなDynamoDBアプリが欲しいです。 たぶん、これらの1つがまだ存在しない理由については正当な理由がありますか?

2
DockerコンテナをスケーリングするためにAWSElasticBeanstalkまたはAmazonEC2 Container Service(ECS)を使用する必要がありますか?
複数のマイクロサービスで構成されるDockerベースのアプリケーションを開発しました。Amazon SQSメッセージを消費し、それらを処理する必要があります。最初はAWSElastic Beanstalkを使用したかったのですが、その後EC2 ContainerServiceに転倒しました。今、私はどちらを選ぶべきかわかりません。 現在のところ、ElasticBeanstalkはMulti-Container-Environmentsをサポートしています。すべてのマイクロサービスがDockerコンテナ内に独自のアプリケーションサーバーを持っているので、これは素晴らしいことです。次の問題はスケーリングです。 スケーリングメカニズムがどのように機能するのかわかりません。例:ElasticBeanstalk環境に5つのDockerコンテナーがあります。現在、処理するSQSメッセージが大量にあるため、5番目のDockerコンテナのみが高負荷になっています。他の4つは、CPUをあまり必要としないか、SQSメッセージが少ないため、ほとんどアイドル状態です。5番目のコンテナがJBossアプリケーションサーバーを実行するとします。私の知る限り、使用可能なCPU /メモリが十分にある場合でも、サーバーは限られた量の並列要求しか消費できません。 JBoss Dockerコンテナがリクエストの量を処理できないが、使用可能なCPU /メモリが十分にある場合は、もちろん、同じインスタンスで2番目のDocker / JBossコンテナを自動的に起動したいと思います。しかし、十分なCPU /メモリがない場合はどうなりますか?もちろん、EBの自動スケーリンググループを介して構成可能な2番目のインスタンスでスピンしたいと思います。これで2番目のインスタンスが起動しますが、5番目を除くすべてのコンテナはほぼアイドル状態です。もちろん、2番目のインスタンスでも不要な4を生成しないようにします。これは、リソースの浪費になります。5番目のみが生成され、他はCPU /メモリ/ SQSなどの構成可能なパラメーターに基づいて5番目のスケールのようにスケーリングする必要があります。 Amazon ECSがそれを行っているかどうか、またはそれが可能かどうかは正確にはわかりませんが、このトピックに関する情報源はインターネット上で実際には見つかりません。一般的に言われているように、インスタンス/コンテナーに基づいてスケーリングします。

4
CloudFrontのTTL0は何に役立ちますか?
数週間前、Amazonはコンテンツの有効期限を短縮したと発表しました。 AmazonCloudFrontが最小コンテンツ有効期限を短縮 CloudFrontのTTLを実際に0に設定できるほどです。私の質問は、TTLを0に設定したCloudFrontディストリビューションがあると便利な理由です。これは、キャッシュがまったくないことを意味するため、CloudFrontに到達するすべてのリクエスト原点にぶつかってしまいます。 何が足りないのですか?

5
S3CLIから最後に変更されたオブジェクトを取得します
プログラムでEC2インスタンスを起動し、S3から実行可能ファイルをコピーして実行し、それを実行してインスタンスをシャットダウンするというユースケースがあります(ユーザーデータで実行)。S3から最後に追加されたファイルのみを取得する必要があります。CLIを使用してS3バケットから最後に変更されたファイル/オブジェクトを取得する方法はありますか?

1
CloudFormationは、Lambda関数に関連付けられたNetworkInterfacesがクリーンアップされるのを待機しています
VPC内にLambda関数を含むCloudFormationスタックが あります。スタックを削除しようとすると、AWS CloudFormationが少なくとも25〜30スタック し、イベントで次のメッセージが表示されます- CloudFormation is waiting for NetworkInterfaces associated with the Lambda Function to be cleaned up. これは、FunctionsとSecurityGroupsに接続されているENIが原因であると思われます。 コンソールから、ENIを強制的に削除することも、ENIが接続されているセキュリティグループを削除することもできませんでした 。 2年前の質問やブログを見つけました 。AWSからの解決策はありませんか? 自動化は高速であるはずですが、これは巨大なブロッカーであることが証明されています。 リファレンス -CloudFormationの問題:スタックを削除できませんでした https://forum.serverless.com/t/very-long-delay-when-doing-sls-remove-of-lambda-in-a-vpc/2535

2
AWSコグニトLinkedin
Amazon Cognitoを使用して自分の反応アプリにLinkedInログインを追加しようとしています。ここで説明するようにすべてを実行しましたが、動作しますが、 Amazon CognitoがホストするUIを使用しておらず、ユーザーをAuth0にリダイレクトしたくありませんLinkedInでログインするサイト... Cognito \ Auth0にリダイレクトされずにLinkedIn Cognito login \ signupを実装する方法はありますか? それとも、これを実装するためのより良い方法はすでにあるのでしょうか?

2
Amazon RDS SSL / TLS証明書を更新する-Elastic Beanstalk
AWSは最近、次の必要性を発表しました。 2019年10月31日までにAmazon RDS SSL / TLS証明書を更新してください RDSを使用してPostgres DBに接続する従来のElastic BeanstalkロードバランサーでホストされているRailsアプリケーションがあります。 Amazonによる必要な手順は次のとおりです。 SSL / TLSを使用したDBインスタンスへの接続の暗号化から新しいSSL / TLS証明書をダウンロードします。 新しいSSL / TLS証明書を使用するようにデータベースアプリケーションを更新します。 DBインスタンスを変更して、CAをrds-ca-2015からrds-ca-2019に変更します。 (https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL-certificate-rotation.html) ロードバランサーをこのように設定しているため(SSLではなくHTTPポート80を介してEC2インスタンスに接続しています)、これはステップ1と2を実行する必要がなく、ステップ3のみを実行する必要があることを意味しますか? または、更新された証明書をダウンロードして、手動でロードバランサーまたはECインスタンスにインストール/追加する必要がありますか?それを行う方法がわかりません。

3
SQS maxNumberOfMessages
Javaクライアントアプリケーションを使用して、SQSキューにメッセージを照会しています。キューには、テスト用のセットアップとして12,000メッセージがあります。私はaws-java-sdk最新(software.amazon.awssdk 2.10.62)でopenJDKを使用しています。pom.xmlはさらに下に表示されます。 私が目にしている問題は、maxNumberOfMessages(10)を設定しても3しか得られないということです。これは最大数であり、メッセージ数を保証するものではないことを理解していますが、返されるメッセージ数に揺らぎはありません。常に3です。 AWSドキュメント: MaxNumberOfMessages返されるメッセージの最大数。Amazon SQSがこの値を超えるメッセージを返すことはありません(ただし、返されるメッセージが少ない場合があります)。有効な値:1〜10。デフォルト:1。タイプ:整数必須:いいえ ショートポーリングを使用したメッセージの消費 ショートポーリングを使用してキューからメッセージを消費すると、Amazon SQSはそのサーバーのサブセットを(重み付けランダム分布に基づいて)サンプリングし、それらのサーバーからのみメッセージを返します。したがって、特定のReceiveMessageリクエストがすべてのメッセージを返さない場合があります。ただし、キュー内のメッセージが1,000未満の場合、後続のリクエストはメッセージを返します。キューから消費し続けると、Amazon SQSがそのすべてのサーバーをサンプリングし、すべてのメッセージを受信します。 したがって、古いaws sdkと新しいaws sdkの両方を使用して、Javaで2つのクライアントをテストしたところ、同じ結果が得られました。常に3つのメッセージのみが返されます。 興味深いことに、アプリケーションを外部(私の強力なデスクトップ上)で実行する代わりに、AWS Lambdaとして実行すると、10のメッセージが表示されます。このラムダテストは、同僚がJavaScriptを使用して行ったものです。 したがって、疑問が残るのは、なぜ要求ごとに3つのメッセージしか取得せず、ラムダ内で10を取得できるように見えるのかということです。 リクエストあたりのコストがあるとすると、Amazonの利益に基づいて重み付けされたランダム分布になります=)) SQSテスト方法: public void SQStart() { AwsBasicCredentials awsCreds = AwsBasicCredentials.create("accessKeyID", "secretKeyID"); AwsCredentialsProvider creds = StaticCredentialsProvider.create(awsCreds); SqsClient sqs = SqsClient.builder().credentialsProvider(creds).region(Region.EU_WEST_1).build(); GetQueueUrlRequest getQueueRequest = GetQueueUrlRequest.builder() .queueName(QUEUE_NAME) .build(); String queueUrl = sqs.getQueueUrl(getQueueRequest).queueUrl(); for (int x =1; x …

1
AWS Java SDK v2を使用してAWS EKSから認証トークンを取得する
AWS Java SDK v2を使用してAWS EKSからKubernetes認証トークンを取得するにはどうすればよいですか?次に、Kubernetes SDKを使用してKubernetesで認証するために使用できる認証トークン。つまり、Kubernetesでの認証に使用するEKSから認証トークンを取得して、「kube config」を作成する必要がないようにしたいと考えています。 実際には、次の未解決の問題のコード例を見て、(v2ではなく)AWS Java SDK v1で動作するソリューションを得ました。そこPythonのコード例もあり、ここでは、しかし、私はAWSのJava SDK v2を持つ任意の成功を持っていませんよ。AWS Java SDK v2でそれを行う私の私の試み: public static String getAuthenticationToken(AwsCredentialsProvider awsAuth, Region awsRegion, String clusterName) { try { SdkHttpFullRequest requestToSign = SdkHttpFullRequest .builder() .method(SdkHttpMethod.GET) .uri(new URI("https", String.format("sts.%s.amazonaws.com", awsRegion.id()), null, null)) .appendHeader("x-k8s-aws-id", clusterName) .appendRawQueryParameter("Action", "GetCallerIdentity") .appendRawQueryParameter("Version", "2011-06-15") .build(); ZonedDateTime expirationDate = …

1
コグニトIDプールidentityIdからコグニトユーザープールユーザー名を取得しています
このユーザープールをIDプロバイダーとして持つCognito IDプールでのアカウント管理にAWS Congitoユーザープールを使用しています。これを使用して、Lambdaにリクエストを送信するAPI Gatewayを介してAPIへのアクセスを制御しています。私のラムダはMicronautを使用してJava 8で実装されています。これらはすべて正常に機能しています。 ラムダでは、名前はのから取得PrincipalしていHttpRequestます: protected String resolveUser( HttpRequest request ){ String ret = null; Optional<Principal> principal = request.getUserPrincipal(); if( principal.isPresent() ){ ret = principal.get().getName(); } if( ret == null || ret.length() == 0 ){ ret = "unknown"; } return ret; } CognitoのidentityIdの文字列名に戻ってくるもの。このようなもの: us-east-1:xxxxe650-53f4-4cba-b553-5dff42bexxxx 実際のユーザーログインをログに記録するか、少なくとも必要に応じて、identityIdをログインに変換する方法をいくつか用意します。 LookupDeveloperIdentity API呼び出しはこれに対処するための正しい方法のようですが、それを機能させることができません。 JavaとAWS Java …

1
aws cloudwatchのログフィルターパターンには、一致するパターンの前後の行が含まれます
AWS CloudWatch Logsの一致パターンの前後にN行を含める方法はありますか? このクエリがあり、各一致の前後に3行必要だとします。 aws logs filter-log-events --log-group-name my-group --filter-pattern "mypattern" 現時点での唯一の回避策は、フィルターパターンを削除してgrepを使用することです。 aws logs filter-log-events --log-group-name my-group | grep -A 3 -B 3 mypattern ただし、必要なログイベントのみをストリーミングし、awsログイベントクエリの一部としてそれを実行します。

2
ImportError:名前md5をインポートできません
ここで何が起こっているのか本当にわかりません、フラスコアプリをElastic Beanstalkにデプロイする必要がありますが、どういうわけかパスが変更され、python application.pyを実行できなくなりました [dotnet --info] .NET Core SDK (reflecting any global.json): Version: 2.1.701 Commit: 8cf7278aa1 Runtime Environment: OS Name: Mac OS X OS Version: 10.14 OS Platform: Darwin RID: osx.10.14-x64 Base Path: /usr/local/share/dotnet/sdk/2.1.701/ Host (useful for support): Version: 2.1.12 Commit: ccea2e606d [brew -v] Homebrew 2.2.0 Homebrew/homebrew-core (git revision 43ad0; last …

1
Javaアプリケーションを実行しているマルチDockerコンテナーのAWS Elastic Beanstalk環境にメモリを動的に割り当てる方法
無料のエラスティックbeanstalk層から可能な限りのオンスの使用を絞り出したいと思います。 私のバックエンドは、(ktorを使用して)マイクロサービスのセットとして構築されています。正確には5つのマイクロサービスがあります。これらはすべてドッキングされており、マルチDocker イメージ環境で同じ小さなt2.micro(無料)エラスティックBeanstalkインスタンス上ですべて実行しようとしています JavaはJavaなので、最も単純なマイクロサービスでも、Dockerコンテナーごとに約200 MBのRAMをアイドル状態にするのが好きです。 したがって、t2.microは1GBのRAMを提供します。5つのマイクロサービスDockerコンテナーがあり、それぞれに少なくとも200 MBを要求する=本当に近い。 問題は、メモリがほぼ常に100%に激しくホバリングしていることです。 では、どれだけの空きがあり、どれだけ必死に1つのコンテナがメモリを必要としているかに応じて、Dockerコンテナにメモリを動的に割り当てる方法はありますか? 1つのコンテナーが重い負荷をかけている間に、他のコンテナーはほとんどアイドル状態になっているとしたら、RAMを重いタスクを実行しているコンテナーに向け、タスクが終了したら、コンテナーごとの等しいRAM割り当てに戻します。 これを行う方法はありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.