投稿時間:2022-11-16 16:35:46 RSSフィード2022-11-16 16:00 分まとめ(42件)

カテゴリー等 サイト名等 記事タイトル・トレンドワード等 リンクURL 頻出ワード・要約等/検索ボリューム 登録日
IT ITmedia 総合記事一覧 [ITmedia News] FTX破綻の本質はガバナンスの問題「仮想通貨業界だけがおかしいわけではない」 マネックス松本CEO https://www.itmedia.co.jp/news/articles/2211/16/news133.html itmedia 2022-11-16 15:31:00
IT 情報システムリーダーのためのIT情報専門サイト IT Leaders ヤンマーパワーテクノロジーが文書管理システムを構築、85万超の文書を部門横断で検索可能に | IT Leaders https://it.impress.co.jp/articles/-/24056 itleaders 2022-11-16 15:19:00
AWS lambdaタグが付けられた新着投稿 - Qiita LambdaからTeamsへ通知するAPIを作る方法 https://qiita.com/kkawano_neko/items/8fcc2a56e8ba8dd5499e oswindowsnvidiagtxti 2022-11-16 15:34:52
python Pythonタグが付けられた新着投稿 - Qiita LambdaからTeamsへ通知するAPIを作る方法 https://qiita.com/kkawano_neko/items/8fcc2a56e8ba8dd5499e oswindowsnvidiagtxti 2022-11-16 15:34:52
js JavaScriptタグが付けられた新着投稿 - Qiita BabelやESLintを信用しすぎないで https://qiita.com/kawakamimoeki/items/884b55521d73bf8a5896 babel 2022-11-16 15:59:00
Ruby Rubyタグが付けられた新着投稿 - Qiita 影響範囲の小さな小回りのきく管理画面ライブラリを作ってみた https://qiita.com/kawakamimoeki/items/1ca5945d6cb58c27c270 thoughtbotadministrate 2022-11-16 15:54:34
Ruby Rubyタグが付けられた新着投稿 - Qiita Rubyの小さなライブラリ群によるアプリでクリーンアーキテクチャを理解する https://qiita.com/kawakamimoeki/items/d4f41faeda0eea5d7c3b mithewebwithsimplicity 2022-11-16 15:52:18
AWS AWSタグが付けられた新着投稿 - Qiita LambdaからTeamsへ通知するAPIを作る方法 https://qiita.com/kkawano_neko/items/8fcc2a56e8ba8dd5499e oswindowsnvidiagtxti 2022-11-16 15:34:52
Docker dockerタグが付けられた新着投稿 - Qiita Dockerのマルチステージビルドを利用してビルド時間を短縮する https://qiita.com/kawakamimoeki/items/faa012784d26e272611e docker 2022-11-16 15:55:14
Docker dockerタグが付けられた新着投稿 - Qiita 「Go×Firebase×React」でJWT認証できる簡単なTODOアプリ作ってみた https://qiita.com/fumi7649/items/6ba198623dfe74f1fe08 firebase 2022-11-16 15:15:31
golang Goタグが付けられた新着投稿 - Qiita 「Go×Firebase×React」でJWT認証できる簡単なTODOアプリ作ってみた https://qiita.com/fumi7649/items/6ba198623dfe74f1fe08 firebase 2022-11-16 15:15:31
Azure Azureタグが付けられた新着投稿 - Qiita AzureでかんたんにIoT #02 - IoTハブにデバイスを追加する https://qiita.com/taiponrock/items/82d14fbe07d4e7017215 azure 2022-11-16 15:03:14
技術ブログ Developers.IO Amazon EventBridge SchedulerでEFSとS3をDataSyncで5分おきに同期してみた https://dev.classmethod.jp/articles/datasync-eventbridge-scheduler-s3-to-efs-data-sync/ amazon 2022-11-16 06:24:36
技術ブログ Developers.IO Amazon EventBridge SchedulerでCloudFrontのキャッシュクリア自動化を試してみました(Lambda不使用) https://dev.classmethod.jp/articles/amazon-eventbridge-scheduler_cloudfront_clear_cache_automation/ amazon 2022-11-16 06:15:57
海外TECH DEV Community Write your Kubernetes Infrastructure as Go code - Combine cdk8s with AWS CDK https://dev.to/abhirockzz/write-your-kubernetes-infrastructure-as-go-code-combine-cdk8s-with-aws-cdk-3705 Write your Kubernetes Infrastructure as Go code Combine cdks with AWS CDKIn an earlier blog post you saw how to use cdks with AWS Controllers for Kubernetes also known as ACK thanks to the fact that you can import existing Kubernetes Custom Resource Definitions using cdks This made is possible to deploy DynamoDB along with a client application from using cdks and Kubernetes But what if you continue using AWS CDK for AWS infrastructure and harness the power cdks and cdks plus to define Kubernetes resources using regular code Thanks to the native integration betweenthe AWS EKS module and cdks you can have the best of both worlds The goal of this blog post is to demonstrate that with a few examples We will start off with a simple nginx based example before moving on to a full fledged application stack including DynamoDB etc Both will be using the Go programming language which is well supported in AWS CDK as well as cdks All the code discussed in this blog is available in this GitHub repo PrerequisitesTo follow along step by step in addition to an AWS account you will need following CLIs AWS CLI cdks CLI and kubectl Also dont forget to install AWS CDK the Go programming language v or above as well as Docker if you don t have them already Keeping it simple with Nginx on EKSAs with most things in life there are two ways the easy way or the hard way You will see both of them Let s try things out first see them working and then look at the code To start off clone the repo and change to the right directory git clone cd cdks for go developers part cdk eks cdks cdk cdks nginx eksTo setup everything all you need is a single command cdk deployyou can also use cdk synth to generate and inspect the Cloud Formation template firstYou will be prompted to confirm Once you do that the process will kick off it will take some time since lots of AWS resources will be created including VPC EKS cluster etc Feel free to check the AWS Cloud Formation console to track the progress Once the process is complete you need to connect to the EKS cluster using kubectl The command required for this will be available as a result of the cdk deploy process in the terminal or you can refer to the Outputs section of the AWS Cloud Formation stack Once you ve configured kubectl to point to your EKS cluster you can check the Nginx Deployment and Service kubectl get deployment outputNAME READY UP TO DATE AVAILABLE AGEnginx deployment cdks mnginx deployment cdk mYou will see that two Deployments have been created more on this soon Similiarly if you check the Service kubectl get svc you should see two of them nginx service cdk and nginx service cdks To access Nginx pick the EXTERNAL IP of any of the two Services For example APP URL kubectl get service nginx service cdk o jsonpath status loadBalancer ingress hostname echo APP URL to access nginx notice we are using port curl i http APP URL If you get a Could not resolve host error while accessing the LB URL wait for a minute or so and re try Behind the scenesLet s look at the code now this will clarify why we have two Nginx Deployments Thanks to AWS CDK VPC creation is a one liner with awsec NewVpc function and creating an EKS cluster isn t too hard either func NewNginxOnEKSStack scope constructs Construct id string props CdkStackProps awscdk Stack vpc awsec NewVpc stack jsii String demo vpc nil eksSecurityGroup awsec NewSecurityGroup stack jsii String eks demo sg amp awsec SecurityGroupProps Vpc vpc SecurityGroupName jsii String eks demo sg AllowAllOutbound jsii Bool true eksCluster awseks NewCluster stack jsii String demo eks amp awseks ClusterProps ClusterName jsii String demo eks cluster Version awseks KubernetesVersion V Vpc vpc SecurityGroup eksSecurityGroup VpcSubnets amp awsec SubnetSelection Subnets vpc PrivateSubnets DefaultCapacity jsii Number DefaultCapacityInstance awsec InstanceType Of awsec InstanceClass BURSTABLE awsec InstanceSize SMALL DefaultCapacityType awseks DefaultCapacityType NODEGROUP OutputConfigCommand jsii Bool true EndpointAccess awseks EndpointAccess PUBLIC Nginx on Kubernetes the hard way Now we look at two different ways of creating Nginx starting with the hard way In this case we use AWS CDK not cdks to define the Deployment and Service resources func deployNginxUsingCDK eksCluster awseks Cluster appLabel map string string app jsii String nginx eks cdk deployment map string interface apiVersion jsii String apps v kind jsii String Deployment metadata map string string name jsii String nginx deployment cdk spec map string interface replicas jsii Number selector map string map string string matchLabels appLabel template map string interface metadata map string map string string labels appLabel spec map string map string interface containers name jsii String nginx image jsii String nginx ports map string float containerPort jsii Number service map string interface apiVersion jsii String v kind jsii String Service metadata map string string name jsii String nginx service cdk spec map string interface type jsii String LoadBalancer ports map string float port jsii Number targetPort jsii Number selector appLabel eksCluster AddManifest jsii String app deployment amp service amp deployment Finally to create this in EKS we invoke AddManifest think of its like the programmatic equivalent of kubectl apply This works but there are a few gaps in this approach We are not able to reap the benefits of Go which is a strongly typed language That s because the API is loosely typed thanks to map string interface everywhere This makes it very error prone I made a few mistakes too The verbosity is apparent as well It seems as if we are writing YAML in Go not too much of an improvement Is there a better way Let s look at the second function deployNginxUsingCDKs by the name its obvious that we used cdks not just CDK func deployNginxUsingCDKs eksCluster awseks Cluster app cdks NewApp nil eksCluster AddCdksChart jsii String nginx eks chart NewNginxChart app nginx cdks nil nil This looks too easy to to be true But it s made possible due to the inter operability between CDK and cdks What this implies is that you can use define Kubernetes resources using cdks Charts and apply them to an EKS cluster created with CDK this makes it sort of a hybrind system The hero of our story is AddCdksChart function which accepts a constructs Construct remember everything is a construct In this case the Construct happens to be a cdks Chart thats returned by NewNginxChart function so lets take a look at that func NewNginxChart scope constructs Construct id string props MyChartProps cdks Chart dep cdksplus NewDeployment chart jsii String nginx deployment amp cdksplus DeploymentProps Metadata amp cdks ApiObjectMetadata Name jsii String nginx deployment cdks dep AddContainer amp cdksplus ContainerProps Name jsii String nginx container Image jsii String nginx Port jsii Number dep ExposeViaService amp cdksplus DeploymentExposeViaServiceOptions Name jsii String nginx service cdks ServiceType cdksplus ServiceType LOAD BALANCER Ports amp cdksplus ServicePort Port jsii Number TargetPort jsii Number return chart If you have worked with cdks and Go or read some of my previous blogs on this topic this should look familiar a strongly typed compact and expressive API I don t even need to walk you through this since its so readable we use cdks plus to create a Nginx Deployment add the container info and finally expose it via a Service so that we can access the Nginx from outside of EKS This was a simple enough example to help bring out difference between the two approaches The next scenario is different in addition to the EKS cluster it has DynamoDB along with a URL shortener application that will be deployed to EKS End to end example DynamoDB along with an application on EKSInstead of creating a new EKS cluster from scratch we will re use the existing cluster created as a result of the previous example this is a good opportunity to take a look at how you can reference an existing EKS cluster in your CDK code As expected we need to create DynamoDB table as well Just like in the previous example let s try out the solution first Change into the right directory first cd part cdk eks cdks cdk cdks dynamodb app eksSince the URL shortener application has to make API calls to DynamoDB we need to configure IAM Roles for Service Accounts also known as IRSA Refer to Define IAM roles for the applicationStart by creating a Kubernetes Service Account kubectl apply f lt lt EOFapiVersion vkind ServiceAccountmetadata name eks dynamodb app saEOFTo confirm kubectl get serviceaccount eks dynamodb app sa o yamlSet your AWS Account ID and OIDC Identity provider as environment variables ACCOUNT ID aws sts get caller identity query Account output text export EKS CLUSTER NAME lt enter cluster name gt export AWS REGION lt enter region e g us east gt OIDC PROVIDER aws eks describe cluster name EKS CLUSTER NAME query cluster identity oidc issuer output text sed e s https Create a JSON file with Trusted Entities for the role read r d TRUST RELATIONSHIP lt lt EOF Version Statement Effect Allow Principal Federated arn aws iam ACCOUNT ID oidc provider OIDC PROVIDER Action sts AssumeRoleWithWebIdentity Condition StringEquals OIDC PROVIDER aud sts amazonaws com OIDC PROVIDER sub system serviceaccount default eks dynamodb app sa EOFecho TRUST RELATIONSHIP gt trust jsonCheck cat trust jsonNow create the IAM role export ROLE NAME dynamodb app irsaaws iam create role role name ROLE NAME assume role policy document file trust json description IRSA for DynamoDB app on EKS We will need to create and attach policy to role since we only want to allow PutItem and GetItem operations from our application Here is the policy JSON file Version Statement Sid PutandGet Effect Allow Action dynamodb PutItem dynamodb GetItem Resource arn aws dynamodb table urls Create and attach the policy to the role we just created aws iam create policy policy name dynamodb irsa policy policy document file policy jsonaws iam attach role policy role name ROLE NAME policy arn arn aws iam lt enter AWS account ID gt policy dynamodb irsa policyFinally we need to associate the IAM role and Service Account kubectl annotate serviceaccount n default eks dynamodb app sa eks amazonaws com role arn arn aws iam lt enter AWS account ID gt role dynamodb app irsaGet the EKS kubectl role ARNTo reference existing EKS cluster in AWS CDK you need EKS cluster name and kubectl role ARN You can find the role ARN in the Outputs section of the AWS Cloud Formation stack We are ready to deploy the application using CDK Set the required environment variables followed by cdk deploy you can also use cdk synth to generate and inspect the Cloud Formation template firstexport EKS CLUSTER NAME lt enter name of EKS cluster gt export KUBECTL ROLE ARN lt enter kubectl role ARN gt export SERVICE ACCOUNT NAME eks dynamodb app saexport APP PORT export AWS REGION lt enter region e g us east gt cdk deployCDK and cdks will do all the heavy lifting we will look at the code very soon New DynamoDB table will be createdThe docker image for our application will be built and pushed to ECRKubernetes resources for the URL shortener application will be deployed to the existing EKS clusterOnce the stack creation is complete check the Kubernetes Deployment and Service kubectl get deployment dynamodb appkubectl get podskubectl get service dynamodb app serviceTesting the URL shortener service is easy But I will not repeat it here since its already covered in this blog All you need is the load balancer URL to access the service and use yout browser or curl to save and access URLs Back to exploring Go code againWithin the stack we define the DynamoDB table using awsdynamodb NewTable along with the docker image for our application with awsecrassets NewDockerImageAsset func NewDynamoDBAppStack scope constructs Construct id string props CdkStackProps awscdk Stack table awsdynamodb NewTable stack jsii String dynamodb table amp awsdynamodb TableProps TableName jsii String tableName PartitionKey amp awsdynamodb Attribute Name jsii String dynamoDBPartitionKey Type awsdynamodb AttributeType STRING BillingMode awsdynamodb BillingMode PAY PER REQUEST RemovalPolicy awscdk RemovalPolicy DESTROY appDockerImage awsecrassets NewDockerImageAsset stack jsii String app image amp awsecrassets DockerImageAssetProps Directory jsii String appDirectory Then comes the interesting part where we get the reference to our exsiting EKS cluster and use AddCdksChart just like before to deploy the application to EKS eksCluster awseks Cluster FromClusterAttributes stack jsii String existing cluster amp awseks ClusterAttributes ClusterName jsii String eksClusterName KubectlRoleArn jsii String kubectlRoleARN app cdks NewApp nil appProps NewAppChartProps appDockerImage ImageUri table TableName eksCluster AddCdksChart jsii String dynamodbapp chart NewDynamoDBAppChart app dynamodb cdks amp appProps nil The NewDynamoDBAppChart function defines the Deployment and Service Unlike the earlier Nginx example which had static values this application takes in dynamic values specifically the DynamoDB table name which is used as the container environment variable TABLE NAME Also notice the fact that we explicitly add the the name of the Kubernetes service account for IRSA that we had created in the previous step func NewDynamoDBAppChart scope constructs Construct id string props AppChartProps cdks Chart dep cdksplus NewDeployment chart jsii String dynamodb app deployment amp cdksplus DeploymentProps Metadata amp cdks ApiObjectMetadata Name jsii String dynamodb app ServiceAccount cdksplus ServiceAccount FromServiceAccountName chart jsii String aws irsa jsii String props serviceAccountName container dep AddContainer omitted for brevity container Env AddVariable jsii String TABLE NAME cdksplus EnvValue FromValue props tableName container Env AddVariable jsii String AWS REGION cdksplus EnvValue FromValue amp props region dep ExposeViaService omitted for brevity return chart Wrap upThat s all for this blog We started off with a simple example to showcase the integration between AWS CDK and cdks and how easy it makes things compared to just using CDK to deploy apps to EKS Then we moved on to explore a full fledged scenario where you deployed the infrastructure DynamoDB etc along with the client application on EKS Happy Building 2022-11-16 06:11:45
Apple AppleInsider - Frontpage News B&H throws massive early Black Friday sale, deals on Apple TV 4K, M2 iPad Pro, Macs https://appleinsider.com/articles/22/11/16/bh-throws-massive-early-black-friday-sale-deals-on-apple-tv-4k-m2-ipad-pro-macs?utm_medium=rss B amp H throws massive early Black Friday sale deals on Apple TV K M iPad Pro MacsFresh early Black Friday deals have launched at B amp H Photo with triple digit discounts on everything from iPad Pros to M MacBook Air laptops Save on Apple devices at B amp H The AppleInsider Deals Team has rounded up top picks from the early Black Friday bonanza ranging from the lowest price on Apple s HomePod mini to the first substantial markdowns on M iPad Pro tablets Read more 2022-11-16 06:25:43
海外科学 NYT > Science Live Updates: NASA’s Artemis Rocket Launches Toward Moon on Mighty Columns of Flame https://www.nytimes.com/live/2022/11/15/science/nasa-artemis-moon-launch Live Updates NASA s Artemis Rocket Launches Toward Moon on Mighty Columns of FlameThe uncrewed mission overcame scrubbed launches hurricanes and late launchpad drama to kick off a key test of America s ability to send astronauts back to the moon 2022-11-16 06:54:49
海外科学 NYT > Science Charlie Blackwell-Thompson is the first woman to serve as a NASA launch director. https://www.nytimes.com/2022/11/16/science/charlie-blackwell-thompson-woman-direct-launch-first.html artemis 2022-11-16 06:43:22
海外科学 NYT > Science Who Can Watch Artemis I Launch From the Ground in Florida? https://www.nytimes.com/2022/11/16/science/space/artemis-nasa-moon-launch-watch.html Who Can Watch Artemis I Launch From the Ground in Florida Viewers all around Florida and as far north as parts of Georgia may be able to spot the Artemis rocket in night skies in the minute after it launches 2022-11-16 06:33:09
海外科学 BBC News - Science & Environment Nasa: Artemis Moon rocket to make third launch attempt https://www.bbc.co.uk/news/science-environment-63643707?at_medium=RSS&at_campaign=KARANGA earth 2022-11-16 06:08:08
医療系 医療介護 CBnews 医療経済実態調査、単月分は廃止-抽出率引き上げへ、中医協・小委員会で了承 https://www.cbnews.jp/news/entry/20221116145658 中央社会保険医療協議会 2022-11-16 15:10:00
金融 JPX マーケットニュース [OSE]特別清算数値(2022年11月限):台湾加権指数 https://www.jpx.co.jp/markets/derivatives/special-quotation/ 台湾加権指数 2022-11-16 15:50:00
金融 JPX マーケットニュース [東証]新規上場の承認(TOKYO PRO Market):(株)マナベインテリアハーツ https://www.jpx.co.jp/equities/products/tpm/issues/index.html tokyopromarket 2022-11-16 15:30:00
金融 JPX マーケットニュース [東証]TOKYO PRO Marketへの上場申請:(株)日本オーエー研究所 https://www.jpx.co.jp/equities/products/tpm/issues/index.html tokyopromarket 2022-11-16 15:30:00
金融 JPX マーケットニュース [東証]新規上場の承認(グロース市場):(株)INFORICH https://www.jpx.co.jp/listing/stocks/new/index.html inforich 2022-11-16 15:30:00
金融 JPX マーケットニュース [東証]制限値幅の拡大:2銘柄 https://www.jpx.co.jp/news/1030/20221116-01.html 東証 2022-11-16 15:15:00
金融 JPX マーケットニュース [TOCOM]最終決済価格(2022年12月限):LNG(プラッツJKM) https://www.jpx.co.jp/markets/derivatives/special-quotation/index.html jkmtocom 2022-11-16 15:15:00
金融 日本銀行:RSS 被災地金融機関を支援するための資金供給オペレーションの実施結果 http://www.boj.or.jp/announcements/release_2022/rel221116a.pdf 資金供給オペレーション 2022-11-16 16:00:00
ニュース @日本経済新聞 電子版 マルチワークが支える社会 過疎地の人手確保へヒント https://t.co/fE9wY0bZX1 https://twitter.com/nikkei/statuses/1592762827575824384 過疎地 2022-11-16 06:13:44
ニュース ジェトロ ビジネスニュース(通商弘報) 米議会諮問委、中国の非市場的慣行への対応策を提言、貿易関係の見直しも https://www.jetro.go.jp/biznews/2022/11/f474565e8ca21850.html 関係 2022-11-16 06:40:00
ニュース ジェトロ ビジネスニュース(通商弘報) 米州知事選、アリゾナで民主党候補がトランプ氏支持候補破り当選確実 https://www.jetro.go.jp/biznews/2022/11/9a4fd45762ac797c.html 当選確実 2022-11-16 06:30:00
ニュース ジェトロ ビジネスニュース(通商弘報) 10月の経済指標、消費の伸びが前年同月比で5カ月ぶりのマイナスに https://www.jetro.go.jp/biznews/2022/11/2802524d8bcfdc49.html 経済指標 2022-11-16 06:25:00
ニュース ジェトロ ビジネスニュース(通商弘報) 地域統括会社(RHQ)ライセンス付与が70社超に https://www.jetro.go.jp/biznews/2022/11/9f1f9349fcc8ecdf.html 統括 2022-11-16 06:20:00
ニュース BBC News - Home Ukrainian soldiers' joyful reunion with family after liberating Kherson https://www.bbc.co.uk/news/world-europe-63639918?at_medium=RSS&at_campaign=KARANGA invasion 2022-11-16 06:18:07
ニュース BBC News - Home The Papers: 'Missiles hit Poland' and 'mould death shames UK' https://www.bbc.co.uk/news/blogs-the-papers-63644195?at_medium=RSS&at_campaign=KARANGA ukraine 2022-11-16 06:03:50
ニュース BBC News - Home Wales arrive in Qatar for start of first World Cup since 1958 https://www.bbc.co.uk/sport/football/63644721?at_medium=RSS&at_campaign=KARANGA world 2022-11-16 06:12:07
ニュース BBC News - Home Match of the Day Top 10: Is Pele the greatest World Cup player of all time? https://www.bbc.co.uk/sport/av/football/63507148?at_medium=RSS&at_campaign=KARANGA player 2022-11-16 06:10:07
ニュース BBC News - Home Top 10 greatest World Cup players https://www.bbc.co.uk/sport/football/63055380?at_medium=RSS&at_campaign=KARANGA lineker 2022-11-16 06:26:48
ニュース Newsweek 犯人がロシアならNATOと戦争の危機、「ありえない」とRTのトップ https://www.newsweekjapan.jp/stories/world/2022/11/post-100127.php この空爆では、発のロシア製ミサイルがNATO加盟国である隣国のポーランドに着弾し、人が死亡したとポーランド当局は発表している。 2022-11-16 15:44:31
IT 週刊アスキー 人気テレビ番組「逃走中」がメタバースXANAでNFTゲーム化 https://weekly.ascii.jp/elem/000/004/113/4113299/ noborderzfze 2022-11-16 15:45:00
IT 週刊アスキー アイリスオーヤマ、電池式リンサークリーナー 電源がない駐車場での車内掃除に便利 https://weekly.ascii.jp/elem/000/004/113/4113348/ 駐車場 2022-11-16 15:30:00
マーケティング AdverTimes ダイバーシティで注目される「ボディ・ポジティブ」 はるやま商事がWEB CMを公開 https://www.advertimes.com/20221116/article402223/ webcm 2022-11-16 06:16:50

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)