Comment faire fonctionner un serveur Java sur Amazon EC2?
Je veux placer un serveur programme écrit en Java sur le cloud. Il accepterait socket TCP connexions des clients (les clients sont les téléphones android en utilisant la 3G), faire quelques calculs, enregistrer des trucs à une base de données MySQL (également sur EC2), et envoyer des trucs de retour pour les clients sur les connexions TCP. Il peut même être nécessaire de créer plusieurs instances du serveur (c'est à dire un groupe de processus).
Est-ce facile à faire? Je pense que je peux faire un AMI, mais je ne suis pas sûr de la façon de télécharger des fichiers Java, compiler et exécuter, et de créer une base de données MySQL etc
Toute aide serait grandement appréciée.
source d'informationauteur foxy
Vous devez vous connecter pour publier un commentaire.
Prendre un coup d'oeil à l'aide de Amazon Elastic Beanstalk. Beanstalk est Amazon offre PaaS et il permettra de soulager une grande partie du système d'administration de charge. Voici une description rapide de leurs docs:
Aussi, si vous êtes intéressés par l'utilisation de MySQL, alors vous devriez regarder Amazon RDS. Encore une fois, cela permettra d'alléger le système d'administration de charge pour votre couche de base de données. Voici une description rapide de leurs docs:
Je pense que la réponse dépend de la façon dont vous êtes à l'aise avec l'administration du système en général. La création d'un AMI de s'exécuter dans EC2 est vraiment à peu près la même que la création d'un serveur physique ou une image de machine virtuelle. Vous aurez besoin d'installer un système d'exploitation, et ensuite installer les outils, les bibliothèques et les programmes dont vous avez besoin (comme mysql, le jdk, ssh, etc).
Vous pouvez vous épargner un peu de travail en utilisant l'un de Amazon pré-construit d'AMI http://aws.amazon.com/amis/. Mais, en fin de compte, vous serez responsable de l'ensemble du système d'administration du serveur. Si vous n'avez jamais construit un serveur à partir de la base, vous avez une assez grande courbe d'apprentissage à l'avance de vous. Ce n'est pas insurmontable, mais juste être averti que le diable est dans les détails; il y a une tonne de choses que vous aurez besoin d'apprendre 😉
Une fois que le serveur est installé et en cours d'exécution dans EC2, la compilation et l'exécution de fichiers java est la même chose que la compilation et l'exécution de votre local. Normalement, vous voulez probablement de compiler et d'un package de votre application java dans un pot ou de la guerre, puis transfert jusqu'à votre EC2 serveur. Si vous installez linux sur votre EC2 serveur, vous pouvez utiliser scp ou un client FTP pour transférer vos fichiers par sftp pour déplacer les fichiers de votre local au serveur. Une fois les fichiers les plus récents sont sur votre serveur, vous pouvez utiliser le protocole ssh au serveur et lancez votre application.
L'installation de mysql va être spécifique de l'OS que vous choisissez d'installer sur votre serveur. Par exemple, vous pouvez installer mysql facilement sur Ubuntu avec une commande comme:
Encore une fois, il y aura plus de système-admin-type de choses à apprendre ici, spécifiques aux bases de données mysql.
Donc, c'est certainement faisable. Une expérience sys admin peut construire une instance AMI assez facilement/rapidement. Si c'est votre première expérience avec l'administration du système, je vous suggère de trouver un vieux Desktop que vous avez qui traînent et d'essayer d'installer Ubuntu et toutes les bibliothèques requises et les outils dont vous avez besoin (mysql, jdk, ssh, etc..). Obtenez votre programme java de travail sur l'ancien ordinateur de bureau, puis il devrait être assez facile de créer un AMI. Ensuite, vous pouvez exécuter votre AMI personnalisée sur EC2 et sera mis en place.
Si vous n'avez pas de bureau de rechange qui traînent, vous pouvez utiliser l'un de la Machine Virtuelle de produits à l'image de VMWare Player ou Sun VirtualBox et de construire une instance de serveur sur l'un de ces.
Si vous voulez éviter les tracas de la gestion de l'ensemble de l'installation du système d'Exploitation, vous pouvez jeter un oeil à des services comme slicehost et/ou linode au lieu de l'EC2. Ils vous donnent un accès ssh à un serveur livré pré-installé. Et c'est aussi facile que de cliquer sur un bouton pour installer des programmes comme mysql, etc.
Espère que cette réponse est pertinente et utile, bonne chance.
- Dave
Si vous pouvez utiliser Tomcat comme serveur, vous pourriez vouloir essayer Amazon Web Services, Aws Elastic Beanstalk Il va grandement vous simplifier la tâche en fournissant un exemple simple de Tomcat à déployer.
EDIT: AWS a une section complète sur la façon de développer à l'aide de Java ici: http://aws.amazon.com/java/
Comment vous sentez-vous à distance de l'administration d'un serveur et de résoudre les problèmes de la plupart des gens n'ont jamais entendu parler? C'est ce que vous parlez.
Vous allez créer votre instance EC2, connectez-vous et configurez-le comme vous le feriez pour tout autre serveur que vous utilisez. Vous pouvez télécharger Jdk, dbs etc. Vous pourriez envisager d'utiliser un outil comme Chef de cuisine pour vous aider. Vous pourrez utiliser le ftp et scp pour copier des fichiers sur le serveur.
Vous allez probablement vouloir de votre serveur Java sur une boîte et ont de parler à un autre serveur de base de données puisque vous dites vous souhaitez peut-être plusieurs serveurs.
Une fois que le serveur fonctionne comme vous le souhaitez, vous pouvez créer une image à utiliser pour le lancement de plusieurs instances, puis configurer un équilibreur de charge à point à vos serveurs.
Si vous pouvez créer une base MySql sur votre boîte, vous pouvez le créer dans le cloud. Si pas?....
L'exécution des Applications besoins de l'application. s/w pour les exécuter.
Des applications telles que des Cyber Canard permet de télécharger des fichiers via SFTP.
Je réussis à faire le même problème.. faites-moi Confiance, VOUS POUVEZ le FAIRE. Tout le besoin d'u est des interfaces pour le serveur de services tels que MySQL (utiliser le WorkBench pour se connecter à l'aide de la paire de clés), d'un terminal d'accès (à l'aide de MASTIC/SSH via MAC) et bien vous êtes bon pour aller
Je pense que pour commencer est d'utiliser un ensemble de l'unité emballée dans une archive.
Pense que vous avez vos fichiers Java compilés, un serveur http embarqué dire
tomcat
. Maintenant, tout cela emballé dans un pot prêt à être déployé surAmazon's EC2
. Utilisation cette lien pour plus ancrées sur les serveurs et le code approprié.Autant que la base de données, vous pouvez utiliser Amazon RDS. Vous pouvez configurer mysql sur RDS et d'obtenir un lien pour la connexion. Amazon RDS serait vous aider à obtenir commencé avec la base de données.
Maintenant que vous avez tout prêt à commencer à et de travailler avec application. C'est maintenant le temps de déployer sur Amazon AMI
Effectuer les étapes Suivantes pour déployer votre application sur Amazon EC2:
.pem
(recevoir à partir de l'Étape 1), ce dossier devrait vous aider à vous connecter à votre instance de serveur et d'effectuer SFTP.Putty
ou similaireSSH client
pour vous connecter à votre EC2 server instance créée à Étape 1 à l'aide de.pem
fichier et le serveur DNS public, reportez-vous Accéder À L'Instance pour une connexion SSH.WinnSCP
être l'un de ces clients, consultez SFTP pour en savoir plus sur elle.java -jar TomcatApp.jar
.Si tout est configuré correctement, vous serait pour accéder à l'application à l'aide d'instance EC2 est
public DNS
oupublic IP
ce qui serait de la forme:http://<public_dns_address>:<port number>/servlet
Espère que cela vous aide à vous lancer et de vous fournir une vue d'ensemble.