Restarting DevStack services - Safest way - openstack

I am using devstack setup in my development environment.
I need the safest way to restarting a particular service in Devstack.
I have tried all the possible way:
I tried the screen -r command it simply shows an error message as follows:
root#devstack:/opt/devstack# screen -r
There is no screen to be resumed.
Then I have tried to open the screen as stack user, then it is showing the error as follows:
stack#devstack:/opt/devstack$ screen -r
Cannot open your terminal '/dev/pts/43' - please check.
So that I went with the final option root#devstack:/opt/devstack# ./rejoin-stack.sh
But in this case, after this command, I am getting the error as follows when I am accessing the devstack horizon.
root#devstack:/opt/devstack# ./rejoin-stack.sh
Each and every horizon page I am getting an error as above.
I can see that in screen there are many errors in many services, Someone let me know the easy and safest way for restarting of services.

rejoin command is the fastest and safest way of restarting, but restart doesn't mean that reinstalling the whole environment. you must protect the configuration of the environment. Most probably you have some problem with environment configuration and rejoin doesn't solve your problem...

Related

Kolla-ansible too many open files

I am having an issue with a relatively small openstack cluster deployed with kolla-ansible. The issue is that after a few days the controllers stop working. When I go into the docker container logs, I see in all of them that there are Too Many Open Files. I have tried changing limits.conf sysctl max files for processes and user. After all of that, the issue still shows up.
One interesting thing is that this was not happening until I had to reboot all of the controllers. I rebooted them because I needed to increase the amount of ram that they have after they died swapping. My first thought was that kolla-ansible is setting a configuration after running deploy, but I can't seem to find any point in the repo when kolla-ansible is changing ulimits or other.
Any theories what could cause this? Would it be related to increasing ram? Should I run reconfigure/deploy on each controller? I've tried looking in kolla-ansible's docs and forums and couldn't see where anyone else was having this issue.
Update this hasn't been fixed yet:
I submitted a bug report, https://bugs.launchpad.net/kolla-ansible/+bug/1901898
I don't know your used versions of Kolla-Ansible and your Linux, but your problem seems really related to this one:
On Ubuntu 16.04, please uninstall lxd and lxc packages. (An issue exists with cgroup mounts, mounts exponentially increasing when restarting container) (source: docs.openstack.org/kolla-ansible/4.0.0/quickstart.html)
I had this problem with the exponentially growing number of mount-pointers after the restart of my docker-containers too. My single-node test-deployment had become very slow based on this problem, but I can't remember at the moment, that I would had the same error with too many open files.
You can delete the packages with apt-get remove lxc-common lxcfs lxd lxd-client. I had done this fix together with a complete reinstallation of the kolla-ansible installation, so I don't know, if this also helps with an already existing installation. You should also use docker-ce instead of the docker from the apt-repos.
This was fixed with a workaround in bug https://bugs.launchpad.net/keystonemiddleware/+bug/1883659 problem was neutron server was keeping memcached connections open and not closing them until the memcached container reached too many files open. There is a work around mentioned in the bug link.

git repo access denied after months of no problems

Up until today, I've had no problem using GitHub to access my client's source repository. I've been happily working as a developer for 6 months on their project. Over the weekend I shut down my computer. Something I don't do very often. For the first time since the restart, I attempted to push a branch to the remote I get Authentication failed. You may not have permission.... git command line has the same issue. I figure it must have something to do with some environment variable that I had established and lost, or some configuration file that got overwritten somehow, but I don't know how to get it to work again. I'm looking for ~/.ssh/config file because some posts reference it in relation to this. I don't know where to go. git config --get-all doesn't produce any output. Too few parameters it says. Can anybody help me with this?

GCE: cannot login, The VM guest environment is outdated and only supports the deprecated 'sshKeys' metadata item

I cannot ssh into my Google Compute Engine (GCE) Wordpress instance anymore.
It was working one month ago when I tried last.
I use the Google built-in SSH client in a Chrome browser window.
Yesterday I tried an got the following message:
The VM guest environment is outdated and only supports the deprecated
'sshKeys' metadata item. Please follow the steps here to update.
The "Steps here" link navigates to https://cloud.google.com/compute/docs/images/configuring-imported-images#install_guest_environment which does not seem to help me much.
I am not aware of any changes that I may have made.
How can I fix this?
It looks like your instance's disk is full, and so the SSH keys can't be created in the temp directory. You can do the following:
Stop your instance and wait for it to shut down
Click on the disk your instance is using, and choose "edit" at the top
Enter a larger disk size, and save
Go back to your instance and start it up again
You should now be able to connect via SSH. While you're in there, check to see what filled up your hard disk so you can prevent this from happening again (maybe a rogue program is printing out too many logs, etc).
If you're seeing this on Debian 8 or 9, the most likely reason for this is that the google-compute-engine.* packages that allow SSH access to the instance have been removed by apt-get autoremove.
If you have an open SSH connection to the machine or can use a tool like gcloud, running apt-get update && sudo apt-get install gce-compute-image-packages should fix this.
If you no longer have any SSH access, there is a procedure available on the GCP docs site that can be used to restore it.
I've created a bug report here for this.
Might be a bit late, but you can
1) Stop the VM
2) Edit and enable serial console
3) Use the serial connection to login and update the VM
recent days, I meet similar problem, later I find the permission rights of my home directory fools me, as a lazy-bone, I chmod 777 ~
After did that, I cannot ssh via my terminal, even cannot ssh via browser, only get 'The VM guest environment is outdated and only supports the deprecated 'sshKeys' metadata item, Plese follow the steps here to update'. Sounds like you must set 755 to your home dir, not just care your 700 .ssh or 600 authorized_keys.
I met the similar issue after I created a FreeBSD VM, gcloud ssh not works, but I am lucky that I can use the browser window ssh to my VM. Then I manually add the google_compute-engine public key to the .ssh/authorized_keys, now it work, I can use the gcloud ssh to connect. But not sure if this is a better/security way.

Apache solr process killed automatically

I am using Apache Solr for one of my Drupal sites. I start my Apache Solr with Java -Jar -Xmx256M start.jar to fix the memory limit. I run my Apache in screen, but at times i see that my instance of Apache solr gets stopped/killed automatically. In my dev server i find it very hard to start it manually. Is there any fix to stop the instance getting killed automatically?
By the way the following are some of the warning i get in the console
"solrconfig.xml: is deprecated and no longer recommended used."
"WARNING: and configuration sections are deprecated (but still work). Please use instead."
Thanks.
I had this problem initially as well. I solved it by starting a screen session as root and starting Solr within that session. Also try adding a nohup before the java command and see if that works.

MSDeploy RunCommand Priviliges

I am trying to use the -presync:runCommand option in MSDeploy and no matter what I try to run, I get the same error back:
Error: A required privilege is not held by the client.
I've tried a handful of items to execute, and none of them work. Ideally I want to execute an exe on the server as such:
-presync:runCommand=C:\MyExecutable.exe,dontUseCommandExe=true
I've also tried
-presync:runCommand=C:\TestScript.bat
And the sample from their documentation
-presync:runCommand="net stop w3svc"
Thanks in advance.
I found the answer, and it turns out I had already halfway completed it. In the link I provided in my question, they mention how to add privileges to the WMSvc account, like so:
sc privs wmsvc SeChangeNotifyPrivilege/SeImpersonatePrivilege/SeAssignPrimaryTokenPrivilege/SeIncreaseQuotaPrivilege
What it failed to mention is that you must restart WMSvc for this to take affect.

Resources