Is it possible to enable NFS Services in PCFDev? - nfs

I'm using PCF Dev Environment on a Windows Host in order to test an application I'm developing. My app needs to access several files that are stored on a NFS Volume.
I know that as an PCF Operator you can redeploy Cloud Foundry and add
The NFS Volume Service Type to your plattform (https://github.com/cloudfoundry/nfs-volume-release).
The PCF Dev uses Bosh Director to deploy so I've installed the BOSH Cli and tried to redeploy the VM.
The Problem is that I neither have got any idea about which configuration to use nor know if it generally works.
So my question is, it is possible to redeploy the PC Dev Environment in order to add the NFS Volume Service?

Related

Lift and Shift of Cloud based applications

We have a web applications developed with Angular and .Net, which is deployed on an Azure Cloud platform, lets say External A-Cloud.
We need to lift the same application and host in a different Internal Cloud Platform, lets say Internal B-Cloud.
How can we achieve this, please share some thoughts to do the ground work to start the process,
Warm Regards
KdM
Migrate an externally hosted cloud based application to our Cloud platform.
We have both AWS and Azure, but the externally hosted one is in Azure cloud platform
We can move from any Cloud to any Cloud. But we need to understand few points first.
How are the Angular and .Net hosted in Azure
If they are hosted on simple Virtual Machines - Then we can create a Virtual Machine in AWS and Migrate or host the apps in AWS ( Yes we definitely need to consider foundation of AWS like VNETs , hope thats already done )
If the Angular and .Net hosted in Azure is of Kubernetes and docker based
We need to Create EKS in AWS and then as its docker based, the same Manifest files etc would work in EKS as well with minor changes
We can look at migration tools as well if they are Windows VM based

Deploy spinnaker components to pivotal cloud foundry

I want to deploy Spinnaker components to private cloud (PCF). I want to know whether the following procedure works or it. Download spring-cloud-spinnaker-1.0.0.BUILD-SNAPSHOT.jar (mentioned in https://cloud.spring.io/spring-cloud-spinnaker) and run it (on Linux machine), then deploy the Spinnaker components to required space from local host.
If this procedure works, what are the requirements of my system? else mention the way to deploy.
Yes, Spring Cloud Spinnaker is the proper way to install Spinnaker components into a PCF setup.
Each Spinnaker module is installed with custom settings, some including resources (for example, clouddriver needs 4GB RAM + 2GB disk space), and Spring Cloud Spinnaker applies that.
Spring Cloud Spinnaker itself needs 8 GB RAM + 4 GB disk to operate properly. This is cited here => https://github.com/spring-cloud/spring-cloud-spinnaker#running-spring-cloud-spinnaker. When run locally, that probably won't be a problem. Should you install it into PCF itself, that would be a critical setting.
If you run into issues with the installer, you can reach out for assistance at http://join.spinnaker.io/ on the #general channel.

How to deploy a local eclipse worklight project in cloud server?

I developed an android based hybrid app in the IBM MFP-7.0., My app is fetching the data from the Java service which is running in Tomcat Server. Here the app adapters are running in my local system MFP server to get the data from the Java service, So that I can only run the app in my local system android emulator. Now, we want to deploy the app in the cloud so that we can give this app to our users. Can some body help me how to run our MFP app in the cloud? Is it required to place eclipse in the cloud to run my MFP server like the way I am running in my local system?
Thanks in advance.
It looks to me like your understanding is completely lacking in this subject matter. Also note that this question has got nothing to do with programming.
You need a host machine. On this server you will run an application server (Tomcat, WebSphere Full profile, WebSphere Liberty profile - either single or a farm, depending on your required network topology and security & scalability needs).
On this application server you deploy MobileFirst
You will also need a database
This host machine needs to be accessible (with appropriate security) to the public Internet so that it could serve apps installed in end-users' devices
The application needs to be configured to send requests to the server (or to any front-side server like a Load Balancer, again, depending on your topology)
The generated application needs to be submitted to an App Store so that users could download and install it on their devices
I suggest that you will do some reading before asking any question. Since you're using IBM MobileFirst, start by reading the user documentation: http://www-01.ibm.com/support/knowledgecenter/SSNJXP/welcome.html

Configuring Development Environments

If the development environment is run on the host, is there a fast way to configure these and deploy them to multiple machines? If so, how?
Vagrant does this but as virtual machines, which may be painfully slow.
What are some viable alternatives?
Absolutely, if you are talking about using a resource pool to deploy and configure your VMs (dev VMs).
For the sake of simplicity, I assume your virtual environment is hosted on VMWare.
Here are a few things to start off with
For Automating creation of VMs (deploying from templates, configure networking etc) you can use VMWare's PowerCLI (Powershell cmdlets) - more on this here
If your dev environment is purely Windows then, for configuration management, you can use DSC (free) or if you (your org) can afford go the expensive route of using SCCM
If you have a lot of Linux boxes to configure then, fortunately, you have more than one option - Ansible, Chef, Puppet or SaltStack
Spinning off and configuring these machines on demand entirely depends on your needs. One of the (more common ways) to do is, create a VM template (aka base vm) and then deploy a VM from this template.
This base template is usually a bare-bones OS + some common utils + tools - Once a VM is deployed from the template, you can then use one of the above mentioned CM (Configuration Management) tools to install/configure this VM.
Hope this gives some pointers in the right direction

Vagrant in production

I've been reading about Vagrant, and I find it quite useful for my development. I am currently managing a series of services (mail, web, LDAP, file sharing, etc.), and often one of these falls and needs a quick backup. Is it possible (and recommended) to use Vagrant for these purposes?
So far I've virtual machines installed like real machines.
I would also like to know about an alternative to Vagrant which would allow me to setup a simple configuration file and put a virtual machine, for example, with Zimbra, and quickly have an alternate mail server, enable RabbitMQ, etc.
Vagrant should be used more like a staging environment to test your infrastructure changes. It should be your test bed for automated infrastructure changes.
The way we use it at my company is like so:
Create VMs for our managed servers in Vagrant.
Create puppet definitions for each server.
Create cucumber tests for each server.
Make infrastructure changes via puppet and add cucumber tests.
Launch our servers to test for failures.
Fix bugs, release and/or back to step 4.
Basically when we're happy with our changes, we'll pull our puppet changes into production to make it happen.
I'd not recommend using vagrant to manage VMs for real production. I'd use something else like razor, virsh, OpenStack or one of the many other vm management systems out there.
This page suggests that the Vagrant push command is meant for deploying to production:
https://www.hashicorp.com/blog/vagrant-push-one-command-to-deploy-any-application/
"Additionally, multiple config.push.define declarations can be in a Vagrantfile to define multiple pushes, perhaps one to staging and one to production, for example."
From my experience, Vagrant mainly used in a development environment.
Vagrant configuration and provisioning options are limited compared to Terraform for example.
If you are working on a cloud based environment, you can use Terraform for infrastructure provisioning.
If your environment is local or your VMs will be hosted on a datacenter, you can use Ansible, chef or puppet for you configuration management and automation.
Hashicorp just published Otto, which is meant to be the Vagrant's successor. It is designed to support deployment environments.
From their Github page:
The key features of Otto are:
Automatic development environments: Otto detects your application
type and builds a development environment tailored specifically for that
application, with zero or minimal configuration. If your application depends
on other services (such as a database), it'll automatically configure and
start those services in your development environment for you.
Built for Microservices: Otto understands dependencies and versioning
and can automatically deploy and configure an application and all
of its dependencies for any environment. An application only needs to
tell Otto its immediate dependencies; dependencies of dependencies are
automatically detected and configured.
Deployment: Otto knows how to deploy applications as well develop
them. Whether your application is a modern microservice, a legacy
monolith, or something in between, Otto can deploy your application to any
environment.
Docker: Otto can use Docker to download and start dependencies
for development to simplify microservices. Applications can be containerized
automatically to make deployments easier without changing the developer
workflow.
Production-hardened tooling: Otto uses production-hardened tooling to
build development environments (Vagrant),
launch servers (Terraform), configure
services (Consul), and more. Otto builds on
tools that powers the world's largest websites.
Otto automatically installs and manages all of this tooling, so you don't
have to.
I had the same question and have been investigating the use of Vagrant push which as per their documentation, as of version 1.7, Vagrant is capable of deploying or "pushing" application code in the same directory as your Vagrantfile to a remote such as an FTP server.
I'm considering having vagrant spin up in a VM for developers, while also giving you the option to deploy your code to a live server for production environments.
As mentioned by #andrerpena, Otto is the successor of Vagrant.
From www.ottoproject.io :
Otto can deploy your application. Users of Vagrant for years have wanted a way to deploy their Vagrant environments to production. Unfortunately, the Vagrantfile doesn't contain enough information to build a proper production environment with industry best practices. An Appfile is made to encode this knowledge, and deployment is a single command away.